神兵利器 - Shellcode 加解密脚本
2022-8-15 00:2:32 Author: LemonSec(查看原文) 阅读量:16 收藏

安装

git clone https://github.com/blacknbunny/Shellcode-Encrypter-Decrypter.git && cd Shellcode-Encrypter-Decrypter/python encdecshellcode.py --help

示例

Encryption:
python encdecshellcode.py --shellcode \x41\x41\x42\x42 --key SECRETKEY --option encrypt
Decryption:
python encdecshellcode.py --shellcode \x41\x41\x42\x42 --key SECRETKEY --option decrypt

各种shellcode

http://shell-storm.org/shellcode/

import argparsefrom sys import argv, stdout, exit
parser = argparse.ArgumentParser(description="Encrypting & Decrypting Shellcode")parser.add_argument('-s', '--shellcode', help='Shellcode To Encrypt & Decrypt')parser.add_argument('-k', '--key', help='Key Of The Shellcode To Encrypt & Decrpyt', default='key')parser.add_argument('-o', '--option', help='Argument For Encrypting or Decrypting The Shellcode')
args = parser.parse_args()
def EncryptShellcode(shellcode, key):
shellcode_encrypted_hex = [] shellcode_decrypted_hex = [] shellcode_replaced_hex = ''

count = 0 for d in range(0, len(shellcode) / 4): count += 4 shellcode_decrypted_hex.append(shellcode[count-4:count].replace(r'\x', ''))
for x in range(0, len(shellcode_decrypted_hex)): for d in range(0, len(key)): shellcode_encrypted_hex.append(hex(ord(shellcode_decrypted_hex[x].decode('hex')) ^ ord(key[d])))
for y in range(0, len(shellcode_encrypted_hex)): shellcode_replaced_hex += shellcode_encrypted_hex[y].replace('0x', r'\x')
return shellcode_replaced_hex
def DecryptShellcode(shellcode, key): shellcode_decrypted = [] shellcode_xor_headers = []
shellcode_replaced_hex = '' string = ''
for x in shellcode: string += shellcode.replace(r'\x', '') break
count = 0 for y in string: shellcode_xor_headers.append(string[count:count+2]) count += 6
while '' in shellcode_xor_headers: shellcode_xor_headers.remove('')

for z in range(len(shellcode_xor_headers)): shellcode_decrypted.append(hex(ord(shellcode_xor_headers[z].decode('hex')) ^ ord(key[0])))
for h in range(0, len(shellcode_decrypted)): shellcode_replaced_hex += shellcode_decrypted[h].replace('0x', r'\x')
return shellcode_replaced_hexdef PrintHelp(): parser.print_help() exit(1)
def main(): try: shellcode = args.shellcode key = args.key if args.option == "encrypt": print( "Encrypted Shellcode = " + EncryptShellcode(shellcode, key) ) elif args.option == "decrypt": print( "\nDecrypted Shellcode = " + DecryptShellcode(shellcode, key) ) else: PrintHelp() except Exception as e: PrintHelp() print(e)
if __name__ == '__main__': exit(main())

项目地址:

https://github.com/blacknbunny/encdecshellcode

注:如有侵权请联系删除

 热文推荐  

欢迎关注LemonSec

p觉得不错点个“赞”、“在看”

文章来源: http://mp.weixin.qq.com/s?__biz=MzUyMTA0MjQ4NA==&mid=2247532178&idx=2&sn=8c71e38f2e5a6a1e65e8128398515b7c&chksm=f9e311c9ce9498dfe4c399f8692f4812045687e4599ec8480c22aba09308eafc398fe8ef945b#rd
如有侵权请联系:admin#unsafe.sh