Программирование

Статья ASM для х86. (5.3) Протокол ICMP – PING и TRACEROUTE

  • 8 043
  • 5
Продолжим круиз по стеку протоколов TCP/IP, и на этот раз остановимся на ICMP.
В реализации этого протокола нет ничего сложного – он примитивен как амёба. Однако в умелых руках ICMP превращается в грозное оружие, из-за чего Microsoft поспешила на корню отрубить к нему доступ, оставив прогерам на растерзание лишь пару функций из библиотеки iphlpapi.dll – вот их список:
  1. IcmpCreateFile() – создать ICMP сессию;
  2. IcmpSendEcho() – отправить эхо-запрос получателю;
  3. IcmpCloseHandle() – закрыть текущую сессию.
Мдаа.. не густо.. От большого куска ICMP-протокола нам остался лишь унылый PING. В никсах дела обстоят намного лучше. Обычные их сокеты-Беркли позволяют оперировать с сокетами типа IPPROTO_ICMP, хотя под виндой этот тип уже не поддерживается, и функция socket() с аргументом ICMP тут-же возвращает ошибку. Но что так напугало мелкомягких и почему они решились на такой...

Soft ARP-DOS | Отключение интернета у всех в LAN (кроме себя)

  • 6 248
  • 12
ARP DOS

Возникла у меня идея, а что если сделать ARP спуф, но при этом указать не существующий mac адрес в качестве носителя ip адреса шлюза? По идее тогда должен отрубиться интернет у тех, на кого направлен спуф.

Так я решил реализовать arp досер, который отключает интернет всем в локальной сети. Для себя я нашёл пользу в том, чтобы отключать в публичной wifi сети всех от интернета, тем самым получая подключение к интернету с не забитым другими людьми трафиком, а значит и более высокую скорость :]

У программы есть 1 минус, нельзя самому указать адаптер, так что надо делать так, чтобы программа запускалась когда адаптер подключенный к нужной сети использовался в качестве текущего основного подключения (и ещё, возможно, потребуется запускать с выключенным VPN, но его МОЖНО включить после начала доса)

Прога не сжирает процессор и сеть (отправляет всего 2 мелких пакета в секунду)

Запускается очень просто - sudo...

Статья ASM для х86. (5.2.) WinSock – протокол WHOIS

  • 5 180
  • 6
В предыдущей части речь шла о портах..
Теперь поговорим о протоколах и начнём с самого простого WHOIS (nickName), который полностью развенчивает миф об анонимности в сети. Посредством сервисов Whois, начинающий разведчик сможет собрать информацию о любом домене, ..а если повезёт, и об его админе. Отмечу, что инфа о владельце является конфиденциальной и предоставляется регистратором только по запросу органов власти. Но есть и открытые данные, читать которые дозволено всем.

Суть в том, что если мы хотим купить домен в сети Интернет, то должны оставить свою/подноготную регистратору домена. Среди этих данных ФИО, адрес проживания, номер телефона, мэйл и т.д. По такой схеме "люди в чёрном" смогут отследить нас, если мы будем заниматься противозаконной деятельностью.

Основная проблема в том, что в глобальной сети доменов...

Статья ASM для х86. (5.1.) WinSock – работа с портами

  • 13 166
  • 20
После вводной части перейдём к практике..
Cетевое хозяйство лежит на балансе виндовых библиотек в числе которых и wsock32.dll. Эта устаревшая либа пришла в наш век из прошлого и опирается на сокеты Беркли юникса – версия её WinSock v1.1. Начиная с Win-2000 мелкософт отошла от старых принципов, и полностью обновила библиотеку до версии 2.0, поместив новоиспечённые функции внутрь отдельной либы ws2_32.dll. Прежняя версия тоже осталась для совместимости с уже написанными на ней программами, только все дорожки из неё ведут опять к усовершенствованной ws2_32.dll. Проверить это можно в Hiew'e, запросив у него экспорт последовательностью Enter->F8->F9:

w32_ws32.png


Таким образом, мы можем с чистой совестью вызывать старые функции, тем-более что некоторые...

Статья ASM для х86. (5.0.) Cтек TCP/IP. WinSock

  • 9 728
  • 5
Предыдущие части 1,2,3,4 можно найти здесь..
В этой части:
  1. Общие сведения
  2. Сокеты и библиотека WinSock
  3. Обзор функций WinPcap
Привет всем!
Продолжу тему ассемблера, и в этой части уделю внимание программированию сетей.
Дело это не для слабонервных, ..придётся осваивать кучу системных структур, таких как заголовки пакетов и прочее. Обстановку нагнетают и неимоверно богатые возможности сетевых сокетов, однако всё это с лихвой окупается новыми знаниями. Если рассматривать каждую мелочь, то запутаемся в терминах и на выходе получим винегрет. С другой стороны, в архитектуре сети всё переплитается в клубок и если что-то упустить, то на следующих уровнях нас ждёт инфо-дыра. Так-что выберу золотую середину, не углубляясь сильно в теоритическую муть. Материал рассчитан на тех, кто никогда не имел дело с программированием сети, но хотел-бы заняться этим...

Статья ASM для х86 (4.5.) Техники скрытия процессов

  • 7 266
  • 4
Win – это работающая по определённым правилам замкнутая система и если не придерживаться этих правил, её можно пустить по ложному следу. Тут главное не идти на поводу Microsoft, которая вправляет нам мозги своей/увесистой документацией. Сабж рассматривает несколько способов скрытия программ от системного "Диспетчера задач" как на пользовательском уровне, так и на уровне ядра.

4.5.0. Ядерный уровень

Всякий процесс в системе описывается своей структурой EPROCESS – сколько запущенных процессов, столько и структур. Чтобы держать все процессы под контролем, система связывает их в цепочку через механизм связных-списков LIST_ENTRY. Сам список состоит всего из двух элементов – это указатель FLink на следующую структуру EPROCESS в цепочке (Forward), и указатель BLink на предыдущую структуру в цепочке...

Статья ASM для х86. (4.4.) Структура заголовка PE-файла

  • 7 747
  • 4
Рассмотрим формат исполняемого файла..
Важной его частью является формируемый компилятором заголовок PE-Header – этакий паспорт с полной информацией о своём клиенте. Когда система запускает файл на исполнение, загрузчик образов в Ntdll.dll сначала берёт только заголовок из дискового файла, а остальную его часть не трогает. На основании этой информации, лоадер создаёт указанное число секций и прочих ресурсов, и только потом заполняет эти секции кодом и данными. Под заголовок выделяется одна 4К- страница виртуальной памяти размером 0х1000 байт.

Header имеет довольно запутанную структуру и чтобы разобраться в нём хотя-бы на начальном уровне, придётся проштудировать манны как-минимум раз 10. Здесь уже подымался этот вопрос, и человек написал целую статью на эту тему, где достаточно внятно освятил общее положение дел – советую...

Статья ASM для х86. (4.0) Системные механизмы Windows

  • 23 133
  • 59

В этой части:
  1. Процессы и их потоки
  2. Адресное пространство процесса
  3. Вторжение в чужое пространство памяти
  4. Перехват API-функций
  5. Скрытие процессов
Для просмотра структур системы, на данном этапе понадобится ядерный отладчик WinDbg. Он поставляется как в составе пакета WDK, так и отдельно. Версию на любой вкус и цвет можно

Статья ASM для х86. (3.0) Практика

  • 15 874
  • 37
Часть 3. Практика под виндой

Теорию можно продолжать бесконечно, тем-более что тема эта настолько обширна, что закончить её можно только ко ‘второму пришествию’. Без практики она теряет смысл, поэтому пробежавшись по макушкам основ, рассмотрим фундаментальные команды ассемблера на практике.

В качестве компилятора буду использовать FASM, т.к. считаю его синтаксис самым правильным из всех ассемблеров. В отличии от своих собратьев, в нём нет двумысленных команд, да и в использовании он до неприличия прост - компилирует без всяких батников, по одной клавише F9 в своём окне. Весит всего 1 Мб и бесплатно валяется на сайте разработчика, от куда
. Теперь создайте в любой директории папку FASM и просто распакуйте в неё архив – fasm не требует установки в систему.

Ещё нам понадобится отладчик, чтобы воочию...