Модераторы: feodorv
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Несканируемые порты. Отвечают тока на определенные пакеты. 
:(
    Опции темы
Delphins
  Дата 5.11.2005, 00:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 93
Регистрация: 10.8.2005
Где: Россия, Краснодар

Репутация: нет
Всего: нет



Слышал как то давно про то что можно сделать так чтобы порты не бало видно.
Но как только туда приходит определенный пакет он актевизируется и начинает быть видимым.
Я вот даже незнаю как так сделать... smile
Думаю может как то перехватить API функции и анализировать каждый пакет?
Ткините в статью носом или теорию или лучше пример smile
PM MAIL ICQ Skype MSN   Вверх
Kill_em_all
Дата 7.11.2005, 22:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 2.4.2005

Репутация: нет
Всего: нет



Помог я недавно одному такому, как ты на sources.ru -
обвинили в пособничестве троянописания и рейтинг с нуля понизили
до -1, а это мое первое сообщение на том форуме было!

Ну да ладно! Сам то я не пробовал, но суть способа
такова:
-создается сырой сокет(raw socket);
-слушается весь траффик;
-при получении определенной последовательности байт открывается порт и через него идет общение с клиентом

Такая "программа" остается невидимой при сканировании до последнего момента.
Становится она видной только тогда, когда открывается порт идет общение, а
когда она ожидает последовательности байт, то уж никакие GetTcpTable не помогут
(сокет, то сырой и не исп. портов)

Код

s = socket(AF_INET, SOCK_RAW, IPPROTO_IP);

gethostname(host_name, sizeof(host_name));

host = gethostbyname( host_name );

ZeroMemory( &serv, sizeof(serv) );

serv.sin_family = AF_INET;

serv.sin_addr.s_addr = ((struct in_addr *)host->h_addr_list[0])->s_addr;

bind(s, (SOCKADDR *)&serv, sizeof(SOCKADDR));


ioctlsocket(s, SIO_RCVALL, //не помню точно какой флаг);


И вот только не говори, что ты пишешь не троян smile
PM MAIL   Вверх
Delphins
Дата 8.11.2005, 11:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 93
Регистрация: 10.8.2005
Где: Россия, Краснодар

Репутация: нет
Всего: нет



Большое тебе спасибо. smile
Я еще только учусь.
И пишу троян. (Пожалуста не ставьте штрафов).

PM MAIL ICQ Skype MSN   Вверх
Romikgy
Дата 8.11.2005, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: нет
Всего: 146



Любой порт который слушает твоя машина/прога он всегда виден с меткой типа LISTENING, имхо.


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Delphins
Дата 8.11.2005, 17:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 93
Регистрация: 10.8.2005
Где: Россия, Краснодар

Репутация: нет
Всего: нет



Исправляется перехватом API :-)
PM MAIL ICQ Skype MSN   Вверх
Romikgy
Дата 8.11.2005, 17:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: нет
Всего: 146



Исходник ?


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Kill_em_all
Дата 9.11.2005, 01:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 2.4.2005

Репутация: нет
Всего: нет



Цитата(Romikgy @ 8.11.2005, 16:15)
Любой порт который слушает твоя машина/прога он всегда виден с меткой типа LISTENING, имхо.

"Любой порт который слушает твоя машина/прога он всегда виден с меткой типа LISTENING, имхо. "

Не чувак, ты не прав! Если не откравть порт, то он и виден не буден smile (к чему
твое замечание вообще не пойму smile )
С помощью сырых сокетов можно слушать весь траффик и не открывать порт.
Перчитай мое предыдущее сообщение. Порт будет открыт только тогда, когда
будет получена нужная нам последовательность байт(проверяем вложенными if'ами). Т.е. слушет
невидимо, а общается видимо smile
Вот получили последовательность байт - открыли порт, долго с этим портом никто не соединился -
закрыли. Долгое время прога остается "невидимой" из сети smile
PM MAIL   Вверх
Romikgy
Дата 9.11.2005, 09:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: нет
Всего: 146



Цитата(Kill_em_all @ 9.11.2005, 01:07)
Не чувак, ты не прав! Если не откравть порт, то он и виден не буден  (к чему
твое замечание вообще не пойму  )

Окей я не прав smile
Хотя использовать сниффер (исходник который ты привел, является куском кода сниффера) в данной теме слегка странно , как по мне.
Хотя теоретически (наверное и практически) это можно привязать к этой теме.


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Kill_em_all
Дата 9.11.2005, 09:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 2.4.2005

Репутация: нет
Всего: нет



2>>Romikgy
Я просто читал статью в ][ про невидимый бэкдор
и идея мне понравилась.
А на счет того, что это кусок сниффера - в принципе
это почти весь основной код снифа (только добавить recv),
ну я смотрю ты понимаешь что к чему smile
PM MAIL   Вверх
Delphins
Дата 9.11.2005, 11:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 93
Регистрация: 10.8.2005
Где: Россия, Краснодар

Репутация: нет
Всего: нет



Перехват API дать?
В e-mail.

Хех. Написал сниффер. Слушает все и ждет тока вот чего он должен ждать?
Ведь приходит то целый пакет.
Придется весь пакет разобрать.

Слушайте а как послать такой пакет? Тоже RAW?
Но все равно надо порт указывать. smile

Че делать? Что слать? И куда?
PM MAIL ICQ Skype MSN   Вверх
Kill_em_all
Дата 10.11.2005, 08:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 2.4.2005

Репутация: нет
Всего: нет



Указывать нужно порт 0
Посылаешь на нулевой порт послед. байт 0x01 0x70 0x17 0x01
Или другую последовательность, а в сервере проверяешь

А принимать надо так
Код

while(1)
{
int len=recv(s, buff, sizeof(buff),  0);
for(int i=0;i<len;i++)
if(buff[i+0]==0x01)
if(buff[i+0]==0x70)
if(buff[i+0]==0x17)
if(buff[i+0]==0x01)
{
//открываем порт и общаемся с клиентом
}


Если я действит помог в чем-то, то отправь мне плюсик

Это сообщение отредактировал(а) Kill_em_all - 10.11.2005, 08:46
PM MAIL   Вверх
Romikgy
Дата 10.11.2005, 11:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: нет
Всего: 146



Цитата(Delphins @ 9.11.2005, 11:00)
Придется весь пакет разобрать.

Аха и все ручками smile

Цитата(Delphins @ 9.11.2005, 11:00)
Слушайте а как послать такой пакет? Тоже RAW?

Либо также создать в буфере ручками весь пакет и send, только кажется надо будет другой сокет создавать.
Цитата(Kill_em_all @ 10.11.2005, 08:44)

if(buff[i+0]==0x01)
if(buff[i+0]==0x70)
if(buff[i+0]==0x17)
if(buff[i+0]==0x01)

А здесь не так ?
Код

if(buff[i+0]==0x01)    
if(buff[i+1]==0x70)    
if(buff[i+2]==0x17)    
if(buff[i+3]==0x01)

Хотя наверное можно и конкретное место найти в пакете smile


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Delphins
Дата 10.11.2005, 14:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 93
Регистрация: 10.8.2005
Где: Россия, Краснодар

Репутация: нет
Всего: нет



Необходимо 100 постов. smile
Тааааак.... Нашел как разбирать пакет...
Вот тока там тока служебная информация. И не слова о данных.
Хех. Может XSum подделать? Тогда соообщение пройдет?

Я ввобще делаю так.
1. Открывается RAW сокет в Promisc режиме. Слушает все.
Как только приходит нужное.
Он сразу открывает сокет на заданном порту.
Ждет 30 сек. если данных нет то уничтожает этот сокет.
RAW висит постоянно.

По нормальному UDP сокету уже идет общение с другим компьютером. (Клиентом)

Клиент создает сокет. RAW.
Оформляет пакет и шлет его туда куда надо.
Сразу подрубается в заданныей порт UDP. (RAW уже уничтожили).
И общается.

Вот тока думаю а если фаерволл? Тогда прийдется сделать обратное соеденение.

Опа это идея.... smile
Добавлено @ 14:50
Забыл вам сказать... Пишу то я на Delphi smile
Просто щас нету компиляторов под рукой приплюснутых си.
И все в Delphi портирую.
Добавлено @ 14:51
А щас я вообще в линуксе. хех smile
PM MAIL ICQ Skype MSN   Вверх
Romikgy
Дата 11.11.2005, 10:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: нет
Всего: 146



Цитата(Delphins @ 10.11.2005, 14:48)
Вот тока думаю а если фаерволл? Тогда прийдется сделать обратное соеденение.

Тя файрвол и туда и оттуда не пропустит если он правильно настроен smile


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0793 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.