Hacker

Soft- und Hardware-bezogene Diskussion.
Benutzeravatar
wiesl
Promillesau
Beiträge: 6219
Registriert: Sa Nov 13, 2004 1:00 pm
Wohnort: Wien

Hacker

Beitrag von wiesl » Di Aug 18, 2009 3:25 pm

Ich betreib ja nebenbei auch eine Homepage, und diese wurde jetzt von Hackern infiltriert. Das mühsame ist, dass auf meinem Server ein Skript ausgeführt wurde, dass in ALLE php Dateien einen Link auf eine fremde Homepage eingesetzt wurde, Dabei wurde allerdings die php Datei selbst unbrauchbar gemacht, weil auch Strichpunkte und Klammern gelöscht wurden. Nachdem ich selbst nicht so ein Skirpt machen kann, muss ich alles manuell austauschen.

Am Sonntag hab ich bei dem Link auf Google noch 3 (!) Einträge gefunden, mittlerweile sind es tausende.

@Grent: Bist du auf so einen Fall vorbereitet? Machst du komplette Spiegelungen vom Forum oder setzt du auf Software Backups? Bei mir ists nämlich nur ein Software Backup, und das kann ich momentan nicht draufspielen.

Benutzeravatar
Grent
Bierfass
Beiträge: 14383
Registriert: Do Nov 11, 2004 1:00 pm
Kontaktdaten:

Beitrag von Grent » Di Aug 18, 2009 3:31 pm

Ich mach eigentlich nur Datenbank-Backups.
Sollte die php-Basis zerstört werden, müsste ich die Forums-Software wohl neu installieren.
Von den eigenen Eingriffen sollt ich aber auch Backups machen.
Religion is like a penis.

Benutzeravatar
zobi
Beiträge: 3688
Registriert: Mo Nov 15, 2004 1:00 pm
Kontaktdaten:

Beitrag von zobi » Di Aug 18, 2009 3:46 pm

Als ganz primitive Fremddiagnostik: Mit UltraEdit kannst du auch mehrere Dateien und Ordner samt Dateien nach einem bestimmten Text durchsuchen und den gegebenenfalls ersetzen, so könntest du den link zumindest rausbekommen.
Die .php files müsstest du aber theoretisch auch direkt ersetzen können von einer frischen Version oder irgendeinen anderen, die ändern sich ja nicht durch "Benutzung".

Viell. hab ich auch was falsch/zu wenig verstanden, trotzdem viel Glück!

Benutzeravatar
wiesl
Promillesau
Beiträge: 6219
Registriert: Sa Nov 13, 2004 1:00 pm
Wohnort: Wien

Beitrag von wiesl » Di Aug 18, 2009 5:05 pm

Ich werd das UltraEdit morgen ausprobieren, vielleicht reicht das.
Die Klammern muss ich aber dennoch manuell setzen.

Austauschen der php Files gegen die originalen/jungfäulichen ist deswegen mühsam, weil sich darin auch (manchmal) verknüpfungen befinden, und ich die auch alle ändern muss, da würde mir die UltraEdit Variante besser gefallen.

Ein weiteres Problem besteht darin, dass ich nicht weiß, wie ich mich vor weiteren Angriffen schützen kann.
Die Homepage selbst ist denk ich mal recht sicher, (WBB3 mit Extra Spamschutz und einem Extra Security System). Wie ich aber den Server schützen kann, ist mir ein Rätsel. Als ich den Server damals gemietet habe, hab ich mich erkundigt und in etwa die Antwort bekommen, dass die Server selbst einen so hohen Sicherheitsstandard haben, dass ein weiteres Sicherheitspaket keinen Sinn ergibt.

Benutzeravatar
mastastefant
Schnapsbar
Beiträge: 3557
Registriert: Sa Dez 04, 2004 1:00 pm
Kontaktdaten:

Backups

Beitrag von mastastefant » Do Sep 24, 2009 5:47 pm

Für Backups kann ich rdiff-backup empfehlen:
http://rdiff-backup.nongnu.org/

Ist ein Linux-Commandline-Tool, das aber auch nen Windows-Port hat (hab ich aber noch nicht ausprobiert, nachdems auf Python lauft, sollte das aber relativ gleich problemlos sein).

Hilft für Datenbank-Backup allein noch nix (da ist ein Dump mit mysqldump oder so immer noch das Beste, den man dann als normales File mitsichert), ist aber spitze für inkrementelle Daten-Backups, auch übers Netzwerk.

Verwendung is simpel: rdiff-backup source-dir target-dir

Das macht einfach ne Kopie von der Quelle, bzw. gleicht das Ziel der Quelle an. Hat aber den gewaltigen Vorteil, dass
1. nur die Änderungen kopiert werden, dh. es geht auch bei größeren Datenmengen flott (z.b. Fotos,Musik,.. auf die externe Platte)
2. im Backup-Verzeichnis zusätzlich zum Letzt-Stand in nem eigenen Verzeichnis die Änderungen aufgehoben werden, dh. man kann (sofern die increments nicht durch nen Plattenfehler hin sind) auch alle älteren Sicherungszustände wiederherstellen.

Grad zweiteres ist sehr praktisch und bei wirklich brauchbaren Backuplösungen auch recht wichtig. Wenn man erst nach dem Backup laufen lassen merkt, dass Dateien fehlen oder hin sind, hilft ein normales Backup auch nicht, weil dann sinds im Backup auch hin (hab schon oft erlebt, dass es irgendwo super-teure Backuplösungen gab, nur dass die dann einfach erst recht automatisch die hinigen Daten übers Backup drüberspielen und erst alle weg ist ohne alte Versionen).

Mit dem rdiff-backup Befehl kann man dann auch z.b. alle Increments älter als Hausnummer 90 Tage wegwerfen, oder den Zustand vom letzten Backup vor 1 Woche von allem oder nur einem Teil davon in ein anderes Verzeichnis wiederherstellen. Eignet sich hervorragend, ums z.b. täglich in der Nacht automatisch durchlaufen zu lassen.

Was Sicherung/Security von Servern betrifft: Standard-PHP-Software ist immer ein gutes Angriffs-Ziel, da hilft v.a. immer schaun, dass man ne aktuelle Version hat, und nach Möglichkeit am Server in der php.ini diesen safe-mode aktivieren und dem Webserver auf die PHP-Files selber nur Lese-Rechte geben. Allerdings kommen viele PHP-Apps nicht gut mit dem safe-mode zurecht, da kanns schon mal passieren, dass dann Fileuploads, Bilder-Verkleinern oder solche sachen nicht mehr geht. Was auch etwas hilft ist, die Software nicht unter Standard-Pfaden ablegen und z.b. nen Redirect legen oder so was, da die meisten Hacks durch automatische Scripts passieren, die einfach alle möglichen Standard-Pfade und -Logins abgrasen (wenn einem fad ist, kann man da ein bissl Server-Logs lesen..).

100% Sicherheit gibts wie überall aber nirgends, und je sicherer man es haben will, desto aufwendiger wirds. Mit aktueller Software, halbwegs sicheren Passwörtern und nicht-standard-Pfade denk ich bekommt man aber die meisten Script-Kiddies und Bastelkasten-Viren, die auf der Suche nach Spam-Relays/FTP-Space/Ärger-machen sind weg, und für den Rest hilft am besten ein regelmäßiges inkrementelles Backup an einen am besten physisch abgegrenzten Ort, also z.b. die meistens abgesteckte Wechselplatte oder nen anderen (Web-)Server, oder zumindest ein Verzeichnis auf einer anderen Platte auf der nur der Backup-Account irgendwas anstellen darf.
Linux/Debian hilft hier etwas, weil da kann man leicht Security-Updates automatisch einspielen, und Berechtigungen sind relativ einfach zu kontrollieren. Bei Windows ist das leider oft Handarbeit und damit mühsam.

Wenn man übrigens Backups nur vom Datenverzeichnis von der Datenbank (MySQL hier, schätz ich mal) macht, kanns passieren dass man ihn mitten im Schreiben erwischt, wenn noch Teile im Cache sind, dann ist das Backup unbrauchbar oder inkonsistent. Deswegen eher einen Dump machen oder mit mysql-hot-backup kopieren. Solang man keine Gigabytes-große Datenbank hat, geht das ganz gut.

Achja, trivial und trotzdem hart durch Erfahrung gelernt: Bei Backups möglichst gleich testen, ob man aus den Backups die Applikation/Daten wiederherstellen kann :)

Benutzeravatar
mastastefant
Schnapsbar
Beiträge: 3557
Registriert: Sa Dez 04, 2004 1:00 pm
Kontaktdaten:

Beitrag von mastastefant » Do Sep 24, 2009 6:23 pm

[Klugscheißer Mode On]
Achja, und ganz streng-genommen muss es heißen 'Cracker', nicht 'Hacker' :)

Ein Hacker ist eigentlich jemand, der irgendwelche Software zusammenbastelt auf eher abgehobenerem Niveau, vorzugsweise nur mit Kommandozeilen-Tools und von 9 Uhr bis 5 Uhr nur wenn damit nachts gemeint ist :) , bzw. jemand, der für irgendein Problem eine Lösung irgendwie schnell hinpfriemelt nach dem "wenns funktioniert ist alles erlaubt"-Prinzip. Angeblich kommt das als Anspielung an irgendwelche Holzfäller, die nur mit einer Axt aus Baumstümpfen ganze Möbel zamge-"hackt" haben.

Ein Cracker ist dagegen einer, der in fremde Rechner einbricht und dort Daten sammelt bzw. Unheil anrichtet.

Die meisten Angriffe werden aber kaum von "echten" Crackern geführt, sondern über meist relativ primitive Bots, Trojaner oder Scripte, die aus dem Viren-Generator kommen und sich primär auf einfache, bekannte Sicherheitslöcher stürzen, und wenig Wert drauf legen, unerkannt zu bleiben, sondern einfach nur solangs geht resourcen (Bandbreite,IP-Adresse,Diskspace,Google-Bombing,..) nutzen wollen, der Server selber ist da eher nebensächlich. Trotzdem kann man grad da auch schnell selber Ärger bekommen, wenn der Server plötzlich auf allen Blacklists drauf ist und man böse Mails von Admins bekommt.

Bei einem "richtigen" professionellen Angriff sollte man normalerweise nicht viel mitbekommen, denn ein Angreifer will kaum gern entdeckt werden, d.h. kein hoher Bandbreitenverbrauch, keine hohe CPU-Last wenns geht, und es kann sogar sein, dass der Angreifer am Server selber Sicherheitslöcher stopft, denn der will schließlich den Server dann schon für sich allein. Den Aufwand macht man dann aber nur, wenn es sich lohnt, also bei fetten Uni-Servern (um über die den Traffic ein bissl durch die Welt zu leiten) oder dicken Firmen-Servern, oder wenns gar zu einfach ist in den Server reinzukommen..

Oder man setzt am besten gleich an der div. Überwachungs-Technik an, die derzeit in Massen überall verbaut wird. Dann kann man die Daten einfach auf Staatskosten direkt am Internet-Router abzapfen (kommt sicher noch, Industriespione sind da sicher schon ganz geil drauf) :)

Benutzeravatar
mastastefant
Schnapsbar
Beiträge: 3557
Registriert: Sa Dez 04, 2004 1:00 pm
Kontaktdaten:

Beitrag von mastastefant » Sa Mai 22, 2010 10:05 pm

Ha, endlich mal ein (Set von) brauchbaren Antivirus-Programmen gefunden:
Panda Cloud Antivirus, in Kombination mit Threadfire.

- Panda Cloud Antivirus:
http://www.cloudantivirus.com/de/
Hat im letzten Test sehr gut abgeschnitten, ist sehr resourcen-freundlich, flott, unaufdringlich, im Gegensatz zu dem dämlichen AVG-Free kann man es auch bei Bedarf beenden, braucht keine Neustarts (bis jetzt) und keine automatischen Updates, ist werbefrei und hält mit bezahlten Scannern problemlos mit, wenn nicht besser. Und es hat einen großen, grünen, beruhigenden 'Everything is ok!' Button :)

Die Settings sind extrem minimalistisch, einerseits gut, andererseits vllt. auch schon wieder etwas zu minimalistisch: Viren werden bei Erkennung sofort weggeschoben/neutralisiert, ohne dass man da viel machen kann. Es gibt ne Liste mit erkannten Viren (etwas versteckt, nicht im Scan-Result sondern über das "Papierkorb-Symbol" und dann den Link "Don't find what you are looking for?") wo man die Dateien wieder herstellen kann, allerdings setzt er die dann auch auf eine Whitelist, die man nicht ändern/einsehen kann (das soll angeblich in der kommenden Version 1.1 dann gehn).

Wie der Name vermuten lässt, verwendet der das Internet zum Scannen.. Ich hab noch nicht ganz genau heraus was genau der da mit der Cloud macht, aber im Prinzip dürfts so sein:
- Beim Scan schickt er Signaturen an die Server, die dann 'gut/schlecht/unbekannt' antworten, wobei er mal geholte Signaturen cached. Schlechte werden gleich ohne Rückfrage neutralisiert, findet man dann unter "Can't find .." Link zum Wiederherstellen. Nach dem ersten Scan sollte es daher dann beim nächsten Mal auch flotter gehn.
- Verdächtige Dateien schickt er dann (komplett/als signaturen??) an die Cloud zwecks näherer Analyse durch deren Server bzw. sogar manuell. Das kann man abschalten, ist die einzige Option in dem ganzen Tool. Bis das Ergebnis kommt, steckt er sie in Quarantäne in den Papierkorb, dort kann mans auch händisch wieder rausholen (und kommt dann auf die interne Whitelist).
Hilfe zu den Viren gibts Online, wobei er manchmal anscheinend nicht auf den richtigen Eintrag verweist (?).

Dadurch ist der quasi immer up-to-date beim Scannen, explizite Signatur-Updates brauchts nicht.
Ohne Internet-Verbindung hat er allerdings dann nur die bereits gecachten Signaturen und die Basics (Signaturen von den verbreitetsten und bekanntesten bösen Buben).
On Demand scannt er Files erst, wenn man sie verwendet, also noch nicht wenn man z.B. nur im Explorer die Datei aufgelistet bekommt. Der Quick-Scan ignoriert leider auch die Temp- und Download-Verzeichnisse von Browsern, mit dem 'Scan other items' kann man dann aber einfach ein ganzes Laufwerk (oder mehrere) scannen.
Wenn einem das und das automatische Löschen von schlechten Dateien nicht weiter stört, hat man damit einen recht ordentlichen Scanner.
Dieses Abhackerln von automatisch Viren einschicken zur genaueren Analyse dürfte nur die 'suspicious' files betreffen, d.h. ohne dem muss man wohl halt selbst entscheiden was mit denen passieren soll, dafür gehen dann wohl nur simple Signaturen fürs normale Scannen übers Netz.

Das Tool dient als Bereitstellung einer großen Nutzer- und damit Dateibasis für die "kommerzielle" Variante, die hat dann einen echten Offline-Betrieb und solche Schmankerl mit dabei, der Scanner ist nicht abgespeckt (aber Web-Filter oder so was gibts net).

- Microsoft Security Essentials:
http://www.microsoft.com/security_essentials/
Ist bissl ähnlich wie Panda Cloud AV, auch gratis (will aber ein "echtes" Windows :) ), auch mit Cloud für irgendeine genauere Analyse, auch so gut wie Panda vom Scanner her, vllt. sogar ein klein bissl besser, auch recht flott, aber mehr Resourcen-fresser.

Die MSE arbeitet dafür mit nem normalen Offline-Scan, schickt aber auch verdächtige Dateien (als ganzes) an Microsoft. Kann man anscheinend irgendwie abdrehn, aber nicht vollständig (es werden zumindest Signaturen an dieses MS Spynet oder wie das heißt geschickt).
Der zweite Pferdefuss ist, dass MS es mal wieder genauso wie bei Windows 7 den Standby verkackt hat. Wenn man den Computer schlafen legt oder so was, kommt das Signatur-Update durcheinand und er kann tw. tagelang aufs Updaten vergessen, ohne dass er erkennt dass die Datenbank outdated ist.
Außerdem erlaubt die Lizenz keine Veröffentlichung von Benchmark- und Testergebnissen ohne Einstimmung von MS....

Wenn man Microsoft vertraut (statt der Panda Cloud) und man selbst ein auge auf die Signatur-Updates wirft, ist das auch ein guter Scanner.


In jedem Fall sollte man den Windows Defender deaktiveren, wenn man einen eigenen Scanner installiert, sofern der das nicht eh selber tut.

Zusätzlich dazu kann man noch verwenden:
- ThreadFire: http://www.threatfire.com/
Ein Behaviour-based Thread-Detektor, auch mit riesger Userbasis (und daher sehr guten Scanleistungen), extrem resourcen-sparend (nur so 10Mb), und verträgt sich mit anderen Antivirenscannern (wie Panda Cloud AV oder MSE).

Hat auch so eine "Community Protection", die im Zweifelsfall im Netz nachfrägt, die man aber auch abdrehn kann.

- Windows Firewall: vor allem für ausgehende Verbindungen, für eingehende hat man normalerweise eh einen Router mit NAT, d.h. man hängt nicht direkt an ner öffentlichen IP. Die Windows Firewall können böse Buben leicht umgehn, aber das gilt für andere kommerzielle genauso, und die Windows-eigene kann alles was kommerzielle auch können.

- Spybot S&D: Zum Registry aufräumen und diverses Browser-Klump zu entfernen.

- Und natürlich AdBlock und Co für den Browser (der natürlich Opera oder Firefox ist :) ) gegen Phishing, Cross-site und Co, und natürlich der Klassiker: unterschiedliche, gute Passwörter (z.B. für Webseiten unterschiedliche von denen für Wichtiges (wie Mail) verwenden), und den Passwort-Manager mit Passwort schützen :)

Benutzeravatar
mastastefant
Schnapsbar
Beiträge: 3557
Registriert: Sa Dez 04, 2004 1:00 pm
Kontaktdaten:

Beitrag von mastastefant » Mi Jul 21, 2010 9:10 pm

Mal was aus der Security-Ecke:
Ein signierter Windows-0day-Virus geht gerade gezielt auf Siemens-Software los.. Die Details sind der Stoff, aus denen die Alpträume der Security-Leute sind :)
http://blog.fefe.de/?ts=b2b9e832

Benutzeravatar
mastastefant
Schnapsbar
Beiträge: 3557
Registriert: Sa Dez 04, 2004 1:00 pm
Kontaktdaten:

Beitrag von mastastefant » So Okt 10, 2010 5:33 pm

Ein 16-jähriger entdeckt bei 17 Banken-Seiten Cross-Site-Attacken-Anfälligkeit:
http://www.heise.de/newsticker/meldung/ ... 04841.html

Man nehme sich auch die 1min und checke sich dieses kleine Demo, um mal im Browser seiner Wahl klar vorgeführt zu bekommen, was das bedeutet :)
http://www.heise.de/security/artikel/Pa ... 70910.html

Im Prinzip bedeutet das vor allem, dass man Seiten die wichtige Login-Masken haben nicht per Klick auf nen URL auf einer anderen Seite öffnet, sondern besser selbst den URL eingibt :) Achja, und mit Mouse-Gestures (Öffne-in-neuen-Fenster) funktioniert das Demo nicht, man muss auf den Link explizit klicken :)

Und es zeigt einmal mehr: Javascript ist böse! Am besten abschalten und jedem auf die Nase klopfen dessen Seite mit abgeschaltenen Javascript nicht geht. :)
I find your lack of platform support disturbing.

Benutzeravatar
mastastefant
Schnapsbar
Beiträge: 3557
Registriert: Sa Dez 04, 2004 1:00 pm
Kontaktdaten:

Beitrag von mastastefant » So Okt 10, 2010 6:09 pm

Zur Erklärung vllt noch dazu: XSS (Cross-site scripting) funktioniert so (kommt bei dem Demo vllt nicht so gut raus):

1) Attacker schleust eigenen Code in z.b. http://www.meinebank.at ein:
Dabei wird im Normalfall über eine Eingabemaske vom Angreifer Javascript-code auf http://www.meinebank.at eingescheust.
1a) non-persistent Variante: Der User bekommt vom Angreifer einen Link (per anderer Webseite (klicken Sie hier zum bezahlen,...) oder per Email, der auf die Webseite gehen soll, ist aber nicht http://www.meinebank.at, sondern ein Get/Post, bei dem z.B. über ein Eingabefeld, das den Inhalt danach direkt auf der Seite darstellt, Javascript-code abgeschickt wird, also z.B.:
- Man bekommt den Link 'www.meinebank.at/?loginvalue=<script language="javascript"> .. ' (halt url-encoded), klickt drauf.
- meinebank.at stellt im Response das eingeschleuste javascript dar, der Browser führts aus.
1b) persistent Variante: der Angreifer schickt den Javascript-Code z.b. als Blog-comment einmal ab, wird in die Datenbank geschrieben, und das eingeschleuste Javascript wird dann immer dargestellt, egal ob der User per manipulierten Link oder über eingetippte URL hinkommt

2) Der User loggt sich ein auf http://www.meinebank.at, das Javascript im Browser greift ein und schickt z.b. vor dem Absenden die eingegebenen Daten per GET irgendwo hin, ab in eine Datenbank.

Den ersten Schritt haben sie sich im Demo gespart, und den bösen Code einfach direkt in den Quellcode reingeschrieben.
I find your lack of platform support disturbing.

Antworten