В настоящее время я выполняю курс python через Security Tube. Я в настоящее время застрял в одном модуле, где мне нужно запустить скрипт Python через XP и выполнить его через Immunity Debugger с процессом перед ним.Security Tube Python Scripting Expert
Вот код:
#!/usr/bin/python2.7
import immlib
DESC="Find Instructions"
def main(args) :
imm = immlib.Debugger()
assembledInstruction = imm.assemble (' ' .join(args))
if not assembledInstruction :
return "[-] No Instruction Given!"
addressList = imm.search(assembledInstruction)
td = imm.createTable("Instruction Locations", ['Module', 'Base Address', 'Instruction Address', 'Instruction']
for address in addressList :
# Get module for this address
module = imm.findModule(address)
if not module:
imm.log("Address 0x%08X not in any module" %address)
# Get module object by name. Please note we are not checking for page properties.
# exercises? :)
instruction = ''
numArgs = len(' '.join(args).split('\n'))
for count in range(0, numArgs) :
instruction += imm.disasmForward(address, nlines=count).getDisasm() + ''
td.add(0, [ module[0],
str('0x%08X'%module[1])
str('0x%08X'%address),
instruction
])
Я сохранил файл .py как spse-find.py. Оттуда я запишусь на свой XP через Virtual Box, откройте Immunity Debugger, запустите Server-strcpy.exe. В нижней части программы, я печатаю:
!spse-find jmp ecp
Но при этом выполняется я получаю следующее сообщение об ошибке:
pycommands: error importing module.
Я поместил это в форумах трубной безопасности, но единственной, мне сказали, что я должен проверить синтаксис кода, чтобы убедиться, что он правильный, и чтобы я правильно следил за видео. Я сделал проверки не менее 4 или 5 раз. С тех пор я не получил от них никаких дальнейших ответов, и поэтому мне было интересно, сможет ли кто-нибудь дать мне какое-либо представление о том, где я ошибся, или куда нужно добавить еще код.
Спасибо за помощь.Мне удалось исправить все ошибки синтаксиса, но в нижней части программы, он читает: «Нераспознанный PyCommand» – user3009230