Ruby-Metasploit的核心
Ruby编程语言可以说是Metasploit框架的核心。
根据Ruby官方网站介绍,Ruby编程语言简单而又强大,面向对象,为解释性语言,执行速度快,项目开发周期短,可以构建自动化类来重用代码是Ruby语言的一个特点,而这个特点正好满足了Metasploit的需求。
日本的松本行弘在1995年设计并实现了Ruby语言。后来它被进一步定义为功能类似与Perl语言的、具有动态特性和反射机制的、通用的面向对象(OOP)的程序设计语言。
可以从http://Rubyinstaller.org/downloads/网站下载Windows/Linux版本的Ruby。
也可通过http://tryruby.org/levels/1/challenges网站获得优秀的Ruby资源。
Ruby语言的基础知识
Ruby的交互式命令行
Ruby语言提供了一个可以进行交互的命令行。在交互式命令行上进行工作可以让我们更清楚理解Ruby的基础知识。
在CMD命令行或者终端窗口输入命令irb来启动Ruby的交互式命令行。
输入数字2:
irb(main):001:0> 2
=> 2
进行加法运算:
irb(main):002:0> 2 + 3
=> 5
对字符串操作:
irb(main):008:0> a = “Ruby”
=> “Ruby”
irb(main):009:0> b =“Metasploit”
=> “Metasploit”
irb(main):010:0> a + b
=> “Ruby Metasploit”
在命令行定义方法:
方法或者函数是一组语句,当我们调用它们时会开始执行。可以简单地在Ruby交互命令行声明一个方法,也可以在脚本里对它们进行声明。在使用Metasploit模块时,Ruby的方法是一个很重要的部分。
它的语法格式:
def method_name [([arg [= default]] … [, * arg [, &expr]])]
expr
end
要定义一个方法,首先以def开始,之后随其后的是方法的名称,然后是包含在括号内的参数和表达式。我们还将一个end声明放在表达式的最后来结束对方法的定义。这里,arg指的是方法所接收的参数,expr指的是方法接收并计算的表达式。
例如:
irb(main):002:0> def xorops(a,b)
irb(main):003:0> res = a ^ b
irb(main):004:0> return res
irb(main):005:0> end
=> :xorops
定义一个名为xoropos的方法,它接收a和b两个参数。接着对接收到的参数进行异或运算,并将结果保存到一个名为res的新变量里。最后用return语句返回结果。
Ruby的输出
Ruby语言提供了puts和print两类输出形式,可以用print_good、print_status、print_error语句来表示成功执行、状态和错误。
例如:
print_good(“Example of Print Good”)
print_error(“Example of Print Error”)

最低0.47元/天 解锁文章
513

被折叠的 条评论
为什么被折叠?



