what you don't know can hurt you
Home Files News &[SERVICES_TAB]About Contact Add New

pkl_tool.py.txt

pkl_tool.py.txt
Posted Jan 31, 2008
Authored by Iman Karim

BlazingTools Perfect Keylogger administrative password decrypting utility that can also set the password regardless of whether or not the prior password is known.

tags | encryption
SHA-256 | 431ca38be121b943697f05b86cd0cc4c0d96171ba2c969b2e85c57d263dd54b9

pkl_tool.py.txt

Change Mirror Download
#! /usr/bin/python
# ~ Perfect Keylogger Admin Password Decrypt0r & Sett0r ~

# ~~JUST FOR FUN PROJECT! ~
# First of all:
# I DONT take ANY responsibility for this code.
# You use it by YOUR OWN RISK!
# If you NOT accept it delete this file now!
# If you accept it have fun and backup your pk.bin file befor editing!

# [TARGET_INFO]
# Application : Perfect Keylogger Demo\Fullversion
# Version : Tested with version 1.6.8.2
# Vendor : BlazingTools - BlazingTools.com

# [SCRIPT_INFO]
# Autor : Iman Karim
# Date : 28. Jan. 2008
# E-Mail : iman.karim \x40 smail \x2E inf \x2E fh-bonn-rhein-sieg \x2E de
# Additional : Python OS Independent Code
# Greets : SenoRita, Invisible, Exorzist, Xplosive

# [HOWTO]
# 1. Close Perfect Keylogger (Terminate it or Exit it)
# Don't forget this step because PKL is rewriting the pk.bin OnExit.
# 2. Write down where the pk.bin file is located.
# Usually its on c:\program files\bpk\pk.bin
# Of corse you can copy the file at your favorite destination.
# But dont forget to copy it back to the location if you set a new password ;)
# 3. Run this script over the pk.bin
# See USAGE for more information about this step.
# 4. Enjoy to have back the control over your System :)

# [USAGE]
# ./pkl_tool.py (decrypt|encrypt) (/path/to/pk.bin) [new_password]
# Reallife examples:
#
# **On Linux:
# ./pkl_tool.py decrypt /home/jackd/pk.bin
# - This will try to extract and decrypt the AdminPassword from your pk.bin.
# ./pkl_tool.py encrypt /home/jackd/pk.bin "I AM ADMIN"
# - This will try to open the pk.bin file and change the password to "I AM ADMIN".
#
# **On Windows:
# c:\pythonpath\python.exe pkl_tool.py decrypt "c:\program files\bpk\pk.bin"
# - This will try to extract and decrypt the AdminPassword from your pk.bin.
# c:\pythonpath\python.exe pkl_tool.py encrypt "c:\program files\bpk\pk.bin" "I AM ADMIN"
# - This will try to open the pk.bin file and change the password to "I AM ADMIN".

import sys, os

def createTable():
table = []
table.append(0xA)
table.append(0xB)
table.append(0x8)
table.append(0x9)
table.append(0xE)
table.append(0xF)
table.append(0xC)
table.append(0xD)
table.append(0x2)
table.append(0x3)
table.append(0x0)
table.append(0x1)
table.append(0x6)
table.append(0x7)
table.append(0x4)
table.append(0x5)
for i in range(0, len(table)):
table.append(table[i] + 0x10)

ret = {}
num = 0
for i in range(32, 63 +1):
ret[chr(i)] = table[num] + 0x80
num += 1

num = 0
for i in range(64, 95 +1):
ret[chr(i)] = table[num] + 0xE0
num += 1

num = 0
for i in range(96, 127 +1):
ret[chr(i)] = table[num] + 0xC0
num += 1

return(ret)

table = createTable()

def Decrypt(Ascii):
for char, value in table.items():
if Ascii == value:
return(char)
print "Undecryptable Byte: %i" %(Ascii)
return("?")

def Encrypt(Char):
for char, value in table.items():
if Char == char:
return(chr(value))
print "Uhmm! You have a strange Char in your Password! Aborting!"
sys.exit(0)

def getFileObj(path):

try:
pkbin = open(path, "r+")
except:
print "Failed to open '%s'! Aborting." %path
sys.exit(0)
size = os.path.getsize(path)
if size != 4204:
print "Your pkl.bin have an invalid filesize! The File should have 4204 bytes but have %i! Aborting." %size
sys.exit(0)
print "File seems to be OK."
return(pkbin)

if len(sys.argv) >= 3:
cmd = sys.argv[1]
if cmd == "decrypt":
path = sys.argv[2]
print "Trying to open '%s' to extract and decrypt AdminPassword..." %path
pkbin = getFileObj(path)
pkbin.seek(1812)

byte = ""
pw = ""
while byte != 0xAA:
byte = ord(pkbin.read(1))
if byte != 0xAA:
pw += Decrypt(byte)

pkbin.close()

if pw != "":
print "Admin PW is: '%s'." %(pw)
else:
print "Password not found. However, it could mean that there is no Adminpassword set."

elif cmd == "encrypt":
path = sys.argv[2]
newpw = ""
if len(sys.argv) == 4:
newpw = sys.argv[3]
if len(newpw) >= 84:
print "Your password is too long! C'Mon choose a shorter password."
sys.exit(0)
else:
print "Invalid count of params."
print "If you want to set a new password you should provide one, shouldnt you? :)"
sys.exit(0)
print "Trying to open '%s' to write the AdminPassword '%s'..." %(path, newpw)
pkbin = getFileObj(path)
pkbin.seek(1812)
pw = ""
for char in newpw:
pw += Encrypt(char)
pw += chr(0xAA) * (84-len(pw))
pkbin.write(pw)
pkbin.close()
print "Operation Done. The new password should be set!"
else:
print "Invalid count of params!"
print "Open this script with a Texteditor for more Details."
Login or Register to add favorites

File Archive:

April 2024

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Apr 1st
    10 Files
  • 2
    Apr 2nd
    26 Files
  • 3
    Apr 3rd
    40 Files
  • 4
    Apr 4th
    6 Files
  • 5
    Apr 5th
    26 Files
  • 6
    Apr 6th
    0 Files
  • 7
    Apr 7th
    0 Files
  • 8
    Apr 8th
    22 Files
  • 9
    Apr 9th
    14 Files
  • 10
    Apr 10th
    10 Files
  • 11
    Apr 11th
    13 Files
  • 12
    Apr 12th
    14 Files
  • 13
    Apr 13th
    0 Files
  • 14
    Apr 14th
    0 Files
  • 15
    Apr 15th
    30 Files
  • 16
    Apr 16th
    10 Files
  • 17
    Apr 17th
    22 Files
  • 18
    Apr 18th
    45 Files
  • 19
    Apr 19th
    8 Files
  • 20
    Apr 20th
    0 Files
  • 21
    Apr 21st
    0 Files
  • 22
    Apr 22nd
    11 Files
  • 23
    Apr 23rd
    68 Files
  • 24
    Apr 24th
    0 Files
  • 25
    Apr 25th
    0 Files
  • 26
    Apr 26th
    0 Files
  • 27
    Apr 27th
    0 Files
  • 28
    Apr 28th
    0 Files
  • 29
    Apr 29th
    0 Files
  • 30
    Apr 30th
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2022 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close