我听说Python非常适合用于测试。它有很好的模块。但它并不是一个好的框架,比如Metasploit。
答案 0 :(得分:5)
就我而言,Python和Ruby非常重要。当你真正了解它时,他们基本上都做同样的事情,这完全取决于你的偏好。 Metasploit是用Ruby编写的,许多出色的笔工具都是用Python编写的。 Perl也是一个不错的选择,我经常使用它。它有许多有用的模块,更不用说CPAN(如果你还没有,我建议检查一下)。它适用于套接字脚本,操作数据和着名,因为它具有出色的正则表达式处理能力。我喜欢Perl和Ruby的其他东西是你可以执行Linux命令并将输出捕获到变量中。
例如:
#!/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";
我喜欢这个功能。有一种方法可以在Python中做类似的事情,但它的冗长时间更长。
milw0rm上的大多数程序都是用C语言编写的 - 但这并不是一种真正的脚本语言,如果需要的话,动作编写快速脚本并不容易。
我的结论是Ruby和Python适用于笔测试,并且通常做同样的事情 - 但Perl将永远是我的最爱: - )
答案 1 :(得分:4)
任何具有良好,简单的字符串处理功能的语言都非常适合渗透测试。这就是您将脚本语言视为此类任务中使用最多的语言的原因。
要回答你的问题,他们一样好。
答案 2 :(得分:1)
我认为c比两种语言都更强大,并且更适合笔测试。
答案 3 :(得分:1)
但是C不是一个脚本语言,有许多论据证明python / ruby更适合笔测试。例如,对于C,你不能像python / ruby那样快速自动化,python / ruby是高级语言,在它们上编写程序要比C容易得多。但是如果你想要处理笔测试,你应该学习Python或任何其他脚本语言和C / C ++或其他语言,比如你测试的是什么,但是你应该知道至少一种脚本语言,它们使事情变得更容易一些。