#python #pwntools
Вопрос:
Я извлекаю простые команды назначения из подключения к удаленному терминалу в Python и хотел бы их выполнить. Формат будет таким b = 3156
, и я хотел бы выполнить его с помощью exec()
. Мой код:
def execbin(cmd): exec(cmd.decode('ascii')) # decode() because recvline() gets a binary string conn = remote(url, port) # this is from the library pwntools execbin(conn.recvline(keepends=False)) # get the line and run it
Однако присвоение переменной не происходит:
Как я могу успешно выполнить это задание?
Ответ №1:
Наконец-то я написал что-то вроде:
def getval(cmd): return eval(cmd[4:]) b = getval(conn.recvline(keepends=False))
и это сработало. Этот вопрос все еще открыт для лучших ответов!