PDA

Просмотр полной версии : Сетевой софт под Linux


FlyinGMind
12.01.2013, 02:57
Всем добрый вечер

То что написано ниже, взято из книги "Программирование боевого софта под Linux" Иван Скляров. Но все это в краткой форме - как бы обобщающе, возможно это поможет новичкам, если не понимают, в какую сторону гуглить На форуме подобные темы искал, но ничего именно такого рода не нашел - если что - куплю очки.

К сетевым инструментам в среде Linux можно отнести:


gdb — GNU debbuger

ifconfig — конфигурирование сетевых и-фейсов

netstat — инфа по функционированию сети

lsof — list open files — открытые файлы, каталоги, библиотеки, потоки, открытые порты и процессы, открывшие их

tcpdump — сетевой анализатор пакетов (простейший снифер )

ping

tracerout


Порт — сканер — ищет порты, которые находятся в состоянии ожидания запроса. Работает по методам TCP — сканирования, UDP — сканирования. Так же создают многопоточные порт — сканнеры и на неблокируемых сокетах.

CGI — сканер — нынче преобразовался в сканер безопасности — систему, осуществляющие полную проверку безопасности.

CGI - стандарт интерфейса, используемого для связи внешней программы с веб-сервером вики (http://ru.wikipedia.org/wiki/CGI)

Дальнейшее развитие технологии CGI представляет собой и-фейсFastCGI. Если обычная CGI-программа заново запускается для каждого нового запроса, то в FastCGI-программе используется очередь запросов, которые обрабатываются последовательно. Хабр (http://habrahabr.ru/post/154187/)

Снифферы:


Пассивные — анализ трафика, который проходит через сетевую карту.

Активные — перенаправленный на определенную сетевую карту трафик. Среди активного прослушивания различают:
MAC flooding — в случае устаревших моделей свитчей.

MAC duplicating

ARP Redirect ( man in the middle ) — подмена ARP кеша компьютера А и В на нужный MAC адрес.



Активный модуль состоит из 3 модулей — Рисунок 1.

http://www.undertaking.com.ua/wp-content/uploads/2012/11/%D0%91%D0%B5%D0%B7%D1%8B%D0%BC%D1%8F%D0%BD%D0%BD%D 1%8B%D0%B9.png

Рисунок 1 — Модули сниффера



DDOS — атаки, направленные на истощение ресурсов узла или сети.

Trojans and backdoors — например Connect back backdoor — обычный клиент, который с помощью функции connect() осуществляет подключение по указанному IP — адресу и номеру порта, которые передаются в командной строке. Он ожидает подключения бэкдора — работает в качестве сервера. (Прослушивающий режим netcat with -l & -p)

Exploit — используют уязвимость в ПО для выполнения нужного кода. Различают локальные и удаленные. Среди удаленных очень распространены шеллкоды (shellcode exploit) — работают через командную строку взломанной системы

Rootkit — дает привилегированный доступ ко взломанной системе.

Таким образом мы видим, какие есть способы проникнуть незаметно в чужое пространство сети. Все самое вкусное ищите в книге а так же в просторах инета, в том числе на форуме. Здесь целые разделы об описанных технологиях.

FlyinGMind
12.01.2013, 03:03
И еще, хотел бы спросить, по книге Боевого софта сделал обыкновенный пример консольного сниффера (вроде аналога tcpdump), как его можно усовершенствовать в сторону пользовательского и-фейса? (использовать QT?) И какие + и - создания многопоточного сниффера? (в случае пассивного и активного)... Извините за глупые вопросы.

-bI-
12.01.2013, 03:27
Для улучшения пользовательского интерфейса,

можно использовать tcpdump для сбора пакетов:

tcpdump -s 0 -i eth0 -w mycap.pcap и анализа их в wiresharck

wiresharck mycap.pcap

FlyinGMind
12.01.2013, 03:33
-bI- said:
Для улучшения пользовательского интерфейса,
можно использовать tcpdump для сбора пакетов:
tcpdump -s 0 -i eth0 -w mycap.pcap и анализа их в wiresharck
wiresharck mycap.pcap


Я понимаю, но мне бы хотелось сделать свой аналог. Пусть это будет тот же велосипед с нуля, но что бы свое. Потому что оригинального я придумать пока не могу ничего, а разобраться в этой теме хочу.

mironich
12.01.2013, 03:39
как его можно усовершенствовать в сторону пользовательского и-фейса


Если напишешь именно HTTP сниффер, за образец иф-са можно взять Http Analizer , а то под linux удобного HTTP сниффера нету...

FlyinGMind
12.01.2013, 15:23
mironich said:
Если напишешь именно HTTP сниффер, за образец иф-са можно взять Http Analizer , а то под linux удобного HTTP сниффера нету...


Каким инструментарием для разработки пользовательского и-фейса пользоваться лучше?

Мне почему то кроме Qt ничего в голову не приходит. Или есть другие варинты?

mironich
12.01.2013, 15:35
FlyinGMind said:
Каким инструментарием для разработки пользовательского и-фейса пользоваться лучше?
Мне почему то кроме Qt ничего в голову не приходит. Или есть другие варинты?


А зачем что-то кроме Qt?

Он документирован преккрасно, ну и кодить с его использованием удобно.

Ins3t
13.01.2013, 00:15
да полнo. GTK, FLTK и много много других

m00c0w
13.01.2013, 02:05
да хоть tk)) тоже документирован отлично

drim
13.01.2013, 03:52
бльо, хернёй не страдайте. хочешь научится хак-кодить и чтобы полезно было? вперёд, к написанию NSE-скриптов под nmap под публичные уязвимости:

- относительно не сложно — уж точно легче, чем сканеры изобретать

- познавательно — будешь в тренде, что к чему

- реально полезно — люди, кто юзает nmap (а таких много), будут пользоваться и благодарить

FlyinGMind
13.01.2013, 16:47
Спасибо всем за ответы, буду действовать

m00c0w
13.01.2013, 22:28
drim said:
бльо, хернёй не страдайте. хочешь научится хак-кодить и чтобы полезно было? вперёд, к написанию NSE-скриптов под nmap под публичные уязвимости:
- относительно не сложно — уж точно легче, чем сканеры изобретать
- познавательно — будешь в тренде, что к чему
- реально полезно — люди, кто юзает nmap (а таких много), будут пользоваться и благодарить


на веселом языке lua. Угу. И пока раздуплится сам сканер, плюнешь и быстро напишешь свой скрипт. Знаем, плавали.

FlyinGMind
14.01.2013, 05:09
m00c0w said:
на веселом языке lua. Угу. И пока раздуплится сам сканер, плюнешь и быстро напишешь свой скрипт. Знаем, плавали.


На счет lua - на первый взгляд не очень отличается от остальных Но это же только первый взгляд. Хотелось бы на С++ попрактиковаться. Хотя с другой стороны - главная цель - содержательная часть проекта, а уже под нее подбирается инструмент.

m00c0w
14.01.2013, 05:39
FlyinGMind said:
На счет lua - на первый взгляд не очень отличается от остальных
Но это же только первый взгляд. Хотелось бы на С++ попрактиковаться. Хотя с другой стороны - главная цель - содержательная часть проекта, а уже под нее подбирается инструмент.


C и python рекомендую в таком случае. =)

FlyinGMind
13.02.2013, 03:47
Да, ребята... Скажу я вам, что луа довольно часто используется, в основном здесь и в играх.

Вопрос - на какую тему можно написать скриптик? Читаю доку на офф сайте - все на примерах - а что в реальной жизни взять? Вот вроде бы понятно: определение точной версии чего нить, сканирование сети на наличие новых (недавно созданых) вирусов (поправте если не правильно говорю). Но вот как берусь за клаву - глаза разбегаются, руки опускаются...