Archiv für Kategorie ‘Coding’

Steam - Die dunkle Seite der Macht

Hoi, ich bins S3RB31,

kennt ihr mich noch? Nach so langer Zeit schreibe ich auch mal wieder ein Artikel, und zwar, wie bereits angekündigt, wieder über Injections, Hooks und alles was dazu gehört.

SteamAber was hat das mit Steam zu tun?

Kennt ihr Steam? Für alle die nicht wissen was Steam ist: Wiki

Die schlauen Füchse unter euch werden sich sicher schon gedacht haben, dass wir Steam einfach mal als Opfer unserer Injection-Orgien missbrauchen. Was uns das bringt?

Mehr …

Winlogon loggen? - Part 2 - Der Loader

Tag auch,

ich bins mal wieder. Es hat doch ein wenig länger gedauert als gedacht, aber jetzt ist der Artikel endlich fertig.

Dann mal los!

Nachdem wir uns unsere DLL, mit der wir die Login-Daten loggen, also gebastelt haben müssen wir die DLL ja noch irgendwie in den winlogon-Prozess injecten. Das problem ist, das der Autostart nichts nützen würde, da man den Loader ja vor dem Login starten muss. Was bleibt einem also übrig? Richtig! Treiber oder Services.

Da sich ein Treiber wohl vom Aufwand her nicht lohnen würde, ausser ihr schreibt grad ein Rootkit, habe ich mich für ein Service entschieden. Da ich in diesem Artikel nicht erläutern möchte, wie genau so ein Service funktionert, verweise ich an dieser Stelle einfach mal auf folgenden Artikel von Jarmo Muukka.

http://www.muukka.net/programming/service/

Ich habe auch seinen Beispiel-Service als Grundgerüst benutzt. Den Code des Beispiel-Services findet ihr hier:

http://www.muukka.net/programming/service/Beeper Service.cpp
Mehr …

How to sort a wordlist

Um euch den code anzuschauen, klickt einfach auf “Show”

Open Spoiler »

#!/bin/bash
# Titel: List
# Author: CCiTT#5
# Author-Website (German): http://www.hack-fleisch.net
f_forwardsort () { ##Nach Alphabet sortieren
echo
echo -en "nKompletter Pfad zur Datei (z.B.:/home/user/passwords.txt): "
read fsortin
echo
	while [ ! -f $fsortin ]
		do
                echo
                echo "Datei kann nicht geoeffnet werden oder ist nicht vorhanden"
                echo
                echo -en "nKompletter Pfad zur Datei (z.B.:/home/user/passwords.txt): "
                read fsortin
	done
echo
echo -en "nLege eine Zieldatei fest: "
read fsortout
echo
read -p "Druecke eine beliebiege Taste um fortzufahren... "
echo
/bin/cat $fsortin |sort > $fsortout
	cat $fsortout | while read line
		do
			count=$[ $count + 1 ]
		done
}
echo -e "n$fsortout wurde im aktuellen Verzeichniss abgelegt"
echo
echo "Kehre zum Hauptmenu zurueck ......"
sleep 2
echo
				#Alphabetetisch, rueckwaerts
				#f_reversesort () {
				#echo
				#echo -en "nKompletter Pfad zur Datei (z.B.:/home/user/passwords.txt): "
				#read rsortin
				#echo
				#while [ ! -f $rsortin ]
				#do
				#          echo
				#             echo "Datei kann nicht geoeffnet werden oder ist nicht vorhanden"
				#           echo
				#         echo -en "nKompletter Pfad zur Datei (z.B.:/home/user/passwords.txt): "
				#       read rsortin
				#
				#done
				#echo
				#echo -en "nLege eine Zieldatei fest: "
				#read rsortout
				#echo
				#read -p "Druecke eine beliebiege Taste um fortzufahren... "
				#echo
				#echo
				#/bin/cat $rsortin |sort -r > $rsortout
				#cat $rsortout | while read line
				#do
				 #       count=$[ $count + 1 ]
				#done
				#echo -e "n$rsortout wurde im aktuellen Verzeichniss abgelegt"
				#echo
				#echo "Kehre zum Hauptmenu zurueck ......"
				#sleep 2
				#echo
				#}
f_removedups () {	##Alle doppelten Zeilen loeschen
echo
echo -en "nKompletter Pfad zur Datei (z.B.:/home/user/passwords.txt): "
read indups
echo
	while [ ! -f $indups ]
		do
                echo
                echo "Datei kann nicht geoeffnet werden oder ist nicht vorhanden"
                echo
                echo -en "nKompletter Pfad zur Datei (z.B.:/home/user/passwords.txt): "
                read indups
		done
echo
echo -en "nLege eine Zieldatei fest: "
read outdups
echo
read -p "Druecke eine beliebiege Taste um fortzufahren... "
echo
echo
sed -n 'G; s/n/&&/; /^([ -~]*n).*n1/d; s/n//; h; P' $indups > $outdups
echo
	cat $outdups | while read line
		do
			count=$[ $count + 1 ]
		done
echo -e "n$outdups wurde im aktuellen Verzeichniss abgelegt"
echo
echo "Kehre zum Hauptmenu zurueck ......"
sleep 2
echo
}
f_beginwhite () { ##Leerzeichen aus Angang der Zeilen löschen
echo
echo -en "nKompletter Pfad zur Datei (z.B.:/home/user/passwords.txt): "
read inbeginwhite
echo
	while [ ! -f $inbeginwhite ]
		do
                echo
                echo "Datei kann nicht geoeffnet werden oder ist nicht vorhanden"
                echo
                echo -en "nKompletter Pfad zur Datei (z.B.:/home/user/passwords.txt): "
                read inbeginwhite
		done
echo
echo -en "nLege eine Zieldatei fest: "
read outbeginwhite
echo
read -p "Druecke eine beliebiege Taste um fortzufahren... "
echo
echo
sed -e 's/^[ t]*//' $inbeginwhite > $outbeginwhite
echo
	cat $outbeginwhite | while read line
		do
			count=$[ $count + 1 ]
		done
echo -e "n$outbeginwhite wurde im aktuellen Verzeichniss abgelegt"
echo
echo "Kehre zum Hauptmenu zurueck ......"
sleep 2
echo
}
f_removenonascii () { ##alle Zeiche != loeschen
echo
echo -en "nKompletter Pfad zur Datei (z.B.:/home/user/passwords.txt): "
read innonascii
echo
while [ ! -f $incontrolm ]
	do
                echo
                echo "Datei kann nicht geoeffnet werden oder ist nicht vorhanden"
                echo
                echo -en "nKompletter Pfad zur Datei (z.B.:/home/user/passwords.txt): "
                read innonascii
	done
echo
echo -en "nLege eine Zieldatei fest: "
read outnonascii
echo
read -p "Druecke eine beliebiege Taste um fortzufahren... "
echo
echo
/usr/bin/tr -cd '111240-176' < $innonascii > $outnonascii
echo
	cat $outnonascii | while read line
		do
        count=$[ $count + 1 ]
	done
echo -e "n$outnonascii wurde im aktuellen Verzeichniss abgelegt"
echo
echo "Kehre zum Hauptmenu zurueck ......"
sleep 2
echo
}
f_combine () { #Dateien verheiraten
echo
echo -en "nKompletter Pfad des Verzeichnisses : (z.B:. /home/user/): "
read path
echo
	while [ ! -d $path ]
		do
                echo
                echo "Verzeichnis kann nicht geoeffnet werden oder ist nicht vorhanden"
                echo
                echo -en "nKompletter Pfad des Verzeichnisses : (z.B:. /home/user/): "
                read path
		done
echo
echo -en "nLege eine Zieldatei fest: "
read dictout
echo
read -p "Druecke eine beliebiege Taste um fortzufahren... "
echo
echo
cat $path/*.* > $dictout
	cat $dictout | while read line
		do
			count=$[ $count + 1 ]
		done
echo -e "n$dictout wurde im aktuellen Verzeichniss abgelegt"
echo
echo "Kehre zum Hauptmenu zurueck ......"
sleep 2
echo
}
f_split () { # Dateien Splitten
echo
echo -en "nKompletter Pfad zur Datei (z.B.:/home/user/passwords.txt): "
read insplit
echo
	while [ ! -f $insplit ]
		do
                echo
                echo "Datei kann nicht geoeffnet werden oder ist nicht vorhanden"
                echo
                echo -en "nKompletter Pfad zur Datei (z.B.:/home/user/passwords.txt): "
                read insplit
		done
echo
echo -en "nWieviel Zeilen sollen pro Datei geschrieben werden: "
read lines
echo
echo -en "nGebe den Namen des Zielverzeichnisses an: "
read outdir
echo
read -p "Druecke eine beliebiege Taste um fortzufahren... "
echo
echo
mkdir $outdir
echo
echo "Erstelle $outdir..."
echo
split -l $lines $insplit $outdir/part
echo
	cat $outdir/part* | while read line
		do
			count=$[ $count + 1 ]
		done
echo -e "nDie Dateien wurden im Verzeichniss $outdir abgelgt"
echo
echo "Kehre zum Hauptmenu zurueck ......"
sleep 2
echo
}
#Menu
while :
do
cat << !
1. Sortiere eine Liste nach dem Alphabet
2. Loesche alle doppelten Zeilen
3. Loesche alle Leerzeichen am Anfang der Zeilen
4. Loesche alle nicht ASCI Elemente
5. Fasse mehrer Dateien zu einer zusammen
6. Splitte eine Datei in mehrere auf
7. Quit
!
echo
echo
echo -n " Was nun? "
read choice
case $choice in
1) f_forwardsort ;;
2) f_removedups ;;
3) f_beginwhite ;;
4) f_removenonascii ;;
5) f_combine ;;
6) f_split ;;
7) exit ;;
*) echo ""$choice" ist eine falsche Eingabe "; sleep 2 ;;
esac
done

Winlogon loggen? - Part 1 - Die DLL

Moin Leute,

dieser Artikel wird der erste einer Reihe von Artikeln, welche sich rund um das Thema DLL-Injection drehen, allerdings setzt der Artikel trotzdem einige Vorkenntnisse in diesem Bereich vorraus. Nun denn, auf gehts!

Ich hatte gestern ein wenig langweile, und bin auf folgenden Artikel gestoßen:

http://vxheavens.com/lib/vra07.html

Ich fand es nicht unintressant, dass man das PW bei WindowsXP (und Win7 und/oder Vista?) so einfach mitloggen kann, allerdings bin ich dann auf eine Idee gekommen, die das ganze noch VIEL einfacher, und stabiler, machen sollte.

Bevor ihr weiterlest, solltet ihr aber trotzdem sicherstellen dass ihr gute Kenntnisse in C/C++ besitzt und verstanden habt was DLL-Injection ist. Falls nicht, seid unbesorgt, es gibt viele Tutorials und Code-Snippets zu diesem Thema.
Mehr …

Nach oben