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

Статья Ресёрч. Детектируем какие АВ стоят на ПК юзера, если он просто перешёл по ссылке

красавчик. что то новое для себя узнал и самое главное простое. я бы применил это в детекте виртуальных машин и прочих ботов, это гораздо интересней.порты многое могут рассказать о машине
 
Отсюда вывод: пытаться сканить локальные IP через браузер юзера есть смысл только в одном случае, если вы точно знаете какие IP и порты к ним нужно сканить. Из-за этого я не вижу смысла в таком применении этой методики. Но вот мой JS код который для теста скана локалки, в нём вы можете задать один IP и массив портов к нему которые нужно просканить. Я не стал писать скрипт в который можно задавать сраpу список IP, потому что не вижу в этом практического применения и смысла тоже, те кому надо могут немного переделать скрипт под эту задачу.

Благодарю что преподнесли не блюдечке. Думаю, некоторые дельцы побежали сканить свой трафик на предмет открытия портов популярных криптокошельков :D

Отдельно я отресёрчил ещё один вопрос, который просто забыл отресёрчить в изначальном ресёрче.
Суть в том что в браузерах (Хроме и Firefox) есть black-листы, кхм, извиняюсь, block-листы портов. То есть эти браузеры имеют список портов на которые делая запрос - они не выполнят запрос в принципе и выдадут ошибку. Видимо это сделано в целях защиты и в этих списках есть дефолтные порты популярных протоколов/сервисов (SSH, Telnet, RDP и т.п). То есть обращаться к этим портам не имеет никакого смысла. Пример: запрос на 127.0.0.1:22 выдаст всегда ошибку и запрос даже не попытается выполниться, в том числе если обратиться на 22 порт на любой IP, в том числе и не локальные.

Списки портов в блок листах браузеров
1- Chromium based браузерах (Chrome, Yandex, Opera и вероятно новый Edge на движке хрома) - список найден в исходнике Chromium (https://github.com/chromium/chromiu...f722090104e0e491d6bf071/net/base/port_util.cc) виден весь список блок портов.
2- Firefox - список портов в офф доке https://developer.mozilla.org/en-US/docs/Mozilla/Mozilla_Port_Blocking
3- IE 11 - не лочит порты
4- Edge (не на движке хрома) - аналогично IE, не лочит порты.

Получается что анти-фрод таки не тестит открытые порты вроде 22 и пр., которые свойственны туннелям, прокси и дедикам? Заинтересовала озвученная мысль, что таким сканированием балуются большие братья.
 
Последнее редактирование:
Получается что анти-фрод таки не тестит открытые порты вроде 22 и пр., которые свойственны туннелям, прокси и дедикам? Заинтересовала озвученная мысль, что таким сканированием балуюсь большие братья.

То что антифрод системы таким образом сканят локальный порты - это 100%, сканят они различные популярные прокси порты и некоторые VNC порты, так-же порты которые открывают популярные трояны (сюда же входят HVNC и т.п). Насчёт сканят ли они порты которые залочены браузером - ну в хроме и лисе они это делать точно не будут, потому что это бесполезно, но по идее должны делать если открывать сайт через IE/Edge так как у IE и старого Edge нету блек листов портов, то есть как минимум для них они могут делать скан любых портов. Изначально изучал JS антифрод системы разных компаний, но сейчас уже не помню где нашёл скрипт на основе которого сделал свой. Вроде это был антифрод скрипт от Group-IB которые они предоставляют как услугу другим компаниям на их веб сайтах (сбер и т.п). До этого ресёрча только знал что это возможно и так делают, но как точно это реализовывается не знал.

Думаю, некоторые дельцы побежали сканить свой трафик на предмет открытия портов популярных криптокошельков
Кстати, хорошая идея :)
 
Последнее редактирование:
Это в корне не верное утверждение.

Детект происходит на пальцах так:
1- Мы создаём специальный HTML, добавляем в него мой JS код
2- Юзер переходит на нашу Веб страницу с этим JS кодом
3- JS из браузера юзера пытается создать wss (соединение через сокеты) с локальным IP 127.0.0.1:Port (где 127.0.0.1 текуший комп юзера на котором он открыл эту страницу, а Port, нужны порт для детекта, открыт ли он на прослушивание или нет)
4- Если порт открыт, то произойдёт детект. А это значит что мы задетектировали нужный нам софт. И всё что для этого нужно чтобы пользователь перешёл по нашей ссылке.
Я не знаю как это ещё проще объяснить.
У меня установлен касперский фри. Решил протестить данный скрипт. Запустил тупым копипастом и заметил кучу сообщений об ошибке и тайминги под 1000. Полез в process hacker и обнаружил, что касперский работает на другом порту, а именно - 49671. Добавил этот порт в скрипт, но тот мне все равно отображает его как закрытый, хотя видно, что тайминг явно меньше остальных. Бегло просмотрел скрипт, вроде все должно работать правильно. В чем тогда дело?

Screenshot_9.png
 


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