2009-11-04 7 views

Odpowiedz

4

Każdy język, który ma dobre i łatwe możliwości obsługi ciągów, dobrze pasuje do testów penetracyjnych. Właśnie dlatego języki skryptowe są najczęściej używanymi językami w tego typu zadaniach.

Aby odpowiedzieć na pytanie, są równie dobre.

+0

Masz rację ... ale obsługa ciągów właśnie się nie liczy. Widziałem poprzednie pytanie, który język jest najlepszy do testowania, zależy od narzędzia, którego używamy .. ruby, jeśli metasploit lub python id używamy odporności na płótno .. – Sriram

+0

Obsługa łańcuchów liczy się bardzo! Nie wszystkie exploity wydane dziś koncentrują się na płótnie metasploit lub odporności. Niektóre z nich polegają tylko na możliwościach języka (np. Gniazdach). Zobacz większość exploitów na milw0rm. Ilu z nich korzysta z metasploit? Nieliczne. Prawie wszystkie z nich używają kodu gniazda i próbują przepełnić coś. – Geo

+0

Przepraszam, że mówię, że obsługa sznurka w spokoju sama się nie liczy ... i miał na myśli to, co napisałeś .. część kodu powłoki to głównie rzeczy obsługujące ciągi .. i do zdalnych exploitów bibliotek gniazd, o których wspomniałeś .. – Sriram

5

O ile mi wiadomo, Python i Ruby są znacznie bardziej wyraziste. Kiedy naprawdę do tego dojdziesz, w zasadzie robią to samo, wszystko zależy od twoich preferencji. Metasploit został napisany w Ruby, a wiele fantastycznych narzędzi do pisania zostało napisanych w Pythonie. Perl to również dobry wybór i często go używam. Ma wiele przydatnych modułów, nie wspominając o CPAN (polecam to sprawdzić, jeśli jeszcze tego nie zrobiłeś). Jest dobry do skryptów gniazdowych, manipulowania danymi i renomy dzięki doskonałej obsłudze regexp. Inne rzeczy, które lubię w Perlu i Ruby, to możesz wykonać polecenie Linuksa i przechwycić dane wyjściowe w zmiennej.

np

#!/usr/bin/perl -w 

use strict; 

my $user = `whoami`; 
chomp($user); # usually there's a newline character at the end of the output. 
print "You are " . $user . "\n"; 

Kocham tę funkcjonalność. Jest sposób na zrobienie czegoś podobnego w Pythonie, ale jest o wiele bardziej zdyszany.

Większość programów na milw0rm jest kodowanych w języku C - ale tak naprawdę nie jest to język skryptowy i nie jest tak proste, aby napisać szybki skrypt w locie, jeśli jest to konieczne.

Moja konkluzja jest Ruby i Python są w porządku do testowania pióra i generalnie robić te same rzeczy - ale Perl zawsze będzie moim ulubionym :-)

1

dobrze myślę, że c jest mocniejszy niż obu językach, a jest lepszy do testowania pióra.

1

Ale C nie jest językiem skryptowym, istnieje wiele argumentów potwierdzających, że python/ruby ​​są lepsze do testowania pióra. Na przykład przy C nie można zautomatyzować tak szybko, jak w python/ruby, python/ruby ​​jest językiem wysokiego poziomu, a pisanie programów na nich jest dużo łatwiejsze niż C. Ale jeśli chcesz poradzić sobie z testowaniem piórem, powinieneś nauczyć się Pythona lub innego języka skryptowego i C/C++ lub innych języków, takich jak PHP, na co testujesz, ale powinieneś znać przynajmniej jeden język skryptowy, który sprawia, że ​​niektóre rzeczy są o wiele łatwiejsze. .

Powiązane problemy