Почему я получаю синтаксическую ошибку, когда моя команда гидры атакует собственный веб-сайт?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Почему я получаю синтаксическую ошибку, когда моя команда гидры атакует собственный веб-сайт?

Сообщение Anonymous »

В настоящее время я пытаюсь записать грубую атаку с помощью гидры для проекта ИТ-безопасности. Поэтому я создал две виртуальные машины Ubuntu (одну атакующую и одну жертву). На виртуальной машине жертвы я настраиваю http-сайт с помощью pyhton с простым интерфейсом входа в систему (он возвращает неверный вход или ). Кажется, он работает правильно и доступен с других компьютеров в сети.

Код: Выделить всё

    from http.server import HTTPServer, BaseHTTPRequestHandler
import urllib.parse

class RequestHandler(BaseHTTPRequestHandler):
def do_POST(self):
if self.path == '/login':
content_length = int(self.headers['Content-Length'])
post_data = self.rfile.read(content_length).decode('utf-8')
post_data = urllib.parse.parse_qs(post_data)
username = post_data.get('username', [None])[0]
password = post_data.get('password', [None])[0]

if username == 'user' and password == 'pass':
self.send_response(200)
self.end_headers()
self.wfile.write(b"Login successful")
else:
self.send_response(403)
self.end_headers()
self.wfile.write(b"Invalid login")
else:
self.send_response(404)
self.end_headers()
self.wfile.write(b"Not found")

def do_GET(self):
if self.path == '/login':
self.send_response(200)
self.send_header('Content-type', 'text/html')
self.end_headers()
self.wfile.write(b"""



Username:



Password:







""")
else:
self.send_response(404)
self.end_headers()
self.wfile.write(b"Not found")

def run(server_class=HTTPServer, handler_class=RequestHandler, port=8000):
server_address = ('', port)
httpd = server_class(server_address, handler_class)
print(f'Starting httpd on port {port}...')
httpd.serve_forever()

if __name__ == "__main__":
run()
При попытке атаковать веб-сайт с помощью гидры с виртуальной машины злоумышленника с помощью следующей команды я получаю следующую синтаксическую ошибку. Я разделил три аргумента двоеточием и уже много пытался добиться запуска команды. Кто-нибудь знает, что там может быть не так?

Код: Выделить всё

hydra -l user -P /home/user/Documents/passwords.txt http-post-form://192.168.178.91:8000/login:username=^USER^&password=^PASS^:F=Invalid login

Код: Выделить всё

[ERROR] Wrong syntax, requires three arguments separated by a colon which may not be null: /login


Подробнее здесь: https://stackoverflow.com/questions/785 ... wn-website
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»