由于很多原因,选择了Ruby编程语言而不是其他选择,例如python,perl和C++。选择Ruby的第一个(也是主要的)原因是因为它是Metasploit员工喜欢写的一种语言。在花时间分析其他语言并考虑过去的经验后,发现Ruby编程语言既简单又强大解释语言的方法。Ruby提供的内省程度和面向对象的方面非常适合框架的一些要求。框架对代码重用的自动化类构造的需求是决策制定过程中的关键因素,而且它是perl不太适合提供的东西之一。除此之外,选择Ruby的第二个原因是因为它支持平台独立于线程。虽然在该模型下开发框架期间遇到了许多限制,但Metasploit工作人员观察到了2.x分支的显着性能和可用性改进。未来版本的Ruby(1.9系列)将使用本机线程支持现有的线程API,操作系统将编译解释器,这将解决当前实现的许多现有问题(例如允许使用阻塞操作)。与此同时,与传统的分叉模型相比,现有的线程模型被发现要优越得多,特别是在缺少像Windows这样的原生分支实现的平台上。