2009-11-04 15 views

risposta

4

Qualsiasi linguaggio che abbia buone e facili capacità di gestione delle stringhe è adatto per i test di penetrazione. Questo è il motivo per cui vedi i linguaggi di scripting come le lingue più utilizzate in questo tipo di attività.

Per rispondere alla tua domanda, sono altrettanto buoni.

+0

hai ragione ... ma la gestione delle stringhe non conta. ho visto una domanda precedente su quale lingua è meglio per il pentesting, dipende dallo strumento che usiamo .. ruby ​​se metasploit o python id usiamo il canvas di immunità .. – Sriram

+0

La gestione delle stringhe conta molto! Non tutti gli exploit rilasciati oggi sono focalizzati su metasploit o canvas immunitario. Alcuni di loro si basano solo sulle funzionalità del linguaggio (ad esempio socket). Guarda la maggior parte degli exploit su milw0rm. Quanti di loro usano metasploit? Quasi nessuno. Quasi tutti usano il codice socket e cercano di traboccare qualcosa. – Geo

+0

scusa ho pensato di dire che la gestione delle stringhe da solo non conta ... e avevo in mente che cosa hai postato .. la parte shellcode è per lo più solo per la gestione delle stringhe .. e per gli exploit remoti le librerie dei socket come hai menzionato .. – Sriram

5

Per quanto mi riguarda, Python e Ruby sono un granché. Quando ci riesci davvero, fondamentalmente fanno le stesse cose, è tutto a tuo piacimento. Metasploit è stato scritto in Ruby e molti strumenti di penna fantastici sono stati scritti in Python. Perl è anche una buona scelta e una che uso spesso. Ha molti moduli utili, per non parlare di CPAN (consiglio di controllarlo se non l'hai già fatto). È buono per gli script di socket, la manipolazione dei dati e la rinomanza per la sua eccellente gestione delle espressioni regolari. Le altre cose che mi piacciono di Perl e Ruby è che puoi eseguire un comando Linux e intrappolare l'output in una variabile.

esempio:

#!/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"; 

amo questa funzionalità. C'è un modo per fare qualcosa di simile in Python, ma è molto più lungo.

La maggior parte dei programmi su milw0rm sono codificati in C, ma questo non è realmente un linguaggio di scripting e non è facile scrivere al volo uno script veloce, se necessario.

La mia conclusione è Ruby e Python vanno bene per i test penna, e in generale fare le stesse cose - ma Perl sarà sempre il mio preferito :-)

1

bene penso che c è più potente di entrambe le lingue, e è meglio per il test delle penne.

1

Ma C non è un linguaggio di script, ci sono molti argomenti che dimostrano che python/ruby ​​sono migliori per i test di penna. Ad esempio con C non puoi automatizzare così velocemente come con python/ruby, python/ruby ​​è un linguaggio di alto livello e scrivere su di essi è molto più semplice di C. Ma se vuoi affrontare il test della penna, dovresti imparare Python o qualsiasi altro linguaggio di scripting e C/C++ o altri linguaggi come PHP depent cosa stai testando ma dovresti conoscere almeno un linguaggio di scripting che rende le cose molto più semplici a volte .

Problemi correlati