Recon-NG 黑客信息收集工具

2018-04-0404:44:20 发表评论

Recon-NG简介:

Recon-NG 是由 Python 编写的一个开源的 Web 侦查(信息收集)框架,使用它可以自动的收集信息和网络侦查。

Recon-NG 黑客信息收集工具

使用说明:

下面是一些有用的使用Recon-ng框架的块。虽然并非涵盖所有功能,但以下注释将帮助理解几个框架更有帮助和复杂的功能。

  1. 用户可能创建和共享未合并到框架的主分支中的自定义模块。为了允许使用这些模块而不干扰安装的包,该框架允许使用放置在用户的“家”目录中的自定义模块树。为了利用此功能,必须在“.recon-ng”目录下创建一个名为“modules”的目录,即“〜/ .recon-ng / modules /”。添加到“〜/ .recon-ng / modules /”目录中的自定义模块将在运行时加载到框架中。模块放置在“〜/ .recon-ng / modules /”目录下不会影响功能,但是如果复制正确的模块目录树并且模块放置在正确的位置类别。
  2. 模块被组织以促进渗透测试的流程,并且在模块树内存在用于每个方法步骤的单独的模块分支。侦查,发现,利用和报告是Web应用程序渗透测试方法的步骤1,3,4和5。因此,每个步骤在模块树中都有自己的分支。重要的是要了解侦察和发现之间的区别。侦察是使用开源获取目标的信息,通常被称为“被动侦察”。发现,通常被称为“主动侦察”,发生在明确发送到目标网络以试图“发现”漏洞的数据包。虽然Recon-ng是一个侦察框架,但是该方法其他步骤的元素将被作为一个方便的地方来利用Python的力量。
  3. 加载模块后,框架的上下文更改,并且一组新的命令和选项可用。这些命令和选项对模块是唯一的。使用“help”和“show”命令可以熟悉根(全局)和模块上下文中的框架和可用命令和选项。
  4. “show”的“info”和“source”子命令(仅在模块上下文中可用)是特别有用的方法来发现框架的功能。“show info”命令将返回有关已加载模块的详细信息,“show source”命令将显示其源代码。花一些时间探索模块,使用“show info”和“show source”命令来了解信息如何流过框架。
  5. “查询”命令有助于管理和理解存储在数据库中的数据。用户需要知道并理解结构化查询语言(SQL),以便通过“查询”命令与数据库交互。“show schema”命令提供数据库模式的图形表示,以帮助构建SQL查询。“show schema”命令动态创建图形表示,以便数据库的模式更改,因此命令的结果也会更改。
  6. 注意全局选项,因为它们随着时间的推移而发生变化,并对框架的性能产生巨大影响。许多关于重新安装的在线教程已经过时,并且歪曲了现在全球选项的目的。全局选项是在框架的根(全局)上下文中可用的选项,并且对框架如何操作具有全局影响。诸如“VERBOSE”和“PROXY”的全局选项极大地改变了模块如何呈现反馈和提出Web请求。在深入了解模块之前,请先了解并了解全局选项。
  7. 框架的模块化特性要求频繁地在模块之间切换和每个模块独有的设置选项。它可以成为税务必须反复设置模块选项作为信息流通过框架。因此,框架内所有上下文的选项值都存储在本地,并在每次加载上下文时动态加载。这为会话之间的框架配置提供持久性。
  8. 工作区可帮助用户执行多个同步操作,而无需重复配置全局选项或数据库。每个工作区的所有信息都存储在“〜/ .recon-ng / workspaces /”文件夹下的自己的目录中。每个工作空间包含其自己的Recon-ng数据库实例,用于存储配置选项的配置文件,来自报告模块的报告以及从其他模块收集的任何战利品。要创建一个新的工作区,使用“工作区”命令,workspaces add <name>。加载现有的工作空间也很容易,workspaces select <name>。要查看可用工作区的列表,请参阅“工作区列表”命令或“显示工作区”别名。要删除一个工作区,使用“工作区删除”命令,workspaces delete <name>。也可以通过执行侦察-NG时调用“-w <工作空间>”参数来创建或在运行时加载工作空间,./recon-ng -w bhis。
  9. “search”命令提供搜索所有加载模块的名称并向用户显示匹配的功能。“搜索”命令可以非常有帮助地确定下一步做什么与已经收获的信息,或识别需要什么以获得所需的信息。该模块树的“侦察”分支遵循以下路径结构:recon/<input table>-<output table>/<module>。这提供了简单性来确定什么模块可用于用户想要接下来采取的动作。要查看所有接受域输入模块,搜索后跟一个破折号输入表名“域”: search domains-。要查看所有这些导致收获主机模块,搜索输出表名的“主机”与前一个破折号:search -hosts。
  10. 整个框架配备有命令完成。无论是探索标准命令还是将参数传递给命令,请点击“选项卡”键几次,以显示该命令或参数的所有可用选项。
  11. 即使有命令完成,由于模块树的目录结构,模块加载可能是麻烦的。为了使模块加载更容易,该框架配备了智能加载功能。此功能允许通过引用所需模块名称唯一的关键字来加载模块。例如,use namechk因为它是一个包含字符串“namechk”唯一的模块将载入“侦察/触点,触点/ namechk”模块,而不需要完整路径。尝试使用存在于多个模块名称中的字符串智能加载将导致给定关键字的所有可能模块的列表。例如,有许多模块的名称包含字符串“pwned”。因此,该命令use pwned将不会加载模块,但完整的模块名称为用户返回的可能的模块列表参考一下。
  12. 存储在重建数据库中的每条信息都是可以收集新信息的潜在输入“种子”。“add”命令允许用户将初始记录添加到数据库,这将成为模块的输入。模块获取种子数据,将其转换为其他数据类型,并将数据作为其他模块的潜在输入存储在数据库中。每个模块都有一个“SOURCE”选项,用于确定种子数据。“SOURCE”选项提供了用户可以提供给模块作为输入的灵活性。“SOURCE”选项允许用户选择“default”,它是由模块开发人员确定的来自数据库的种子数据,作为字符串的单个条目,文件的路径或自定义SQL查询。框架将检测源并将其作为模块的输入。更改模块的“SOURCE”选项不会影响模块如何处理生成的信息。
  13. 而“shell”命令和“!” 别名使用户能够在框架内在本地机器上运行系统命令,这些命令都不是实现此功能所必需的。框架不理解为框架命令的任何输入作为系统命令执行。因此,唯一的“shell”或“!” 是必需的,当期望的命令与框架命令共享相同的名称。
  14. 所有活动的记录会话对于许多渗透测试人员是至关重要的,但是内置的操作系统工具(如“tee”和“script”)会破坏所需的功能,如制表完成和输出格式化。为了解决这个困境,框架配备了将所有活动暂停到文件以保证安全的能力。“spool”命令使用户能够启动和停止假脱机,或检查当前假脱机状态。为假脱机数据的目标文件被设置为“阀芯启动”命令的参数,spool start <filename>。使用help spool上的“卷轴”命令的详细信息。
  15. 在侦察过程期间在重要点备份数据有助于防止由于意外的资源行为导致的数据丢失或损坏。“snapshots”命令使用户能够备份和恢复数据库的快照。使用help snapshots的详细信息,在“快照”命令。
打开 Recon-NG

你只需要在终端中输入下面这条命令就可以打开并看到它的界面

root@kali:~# recon-ng
手动忽略个性图标
[76] Recon modules
[8]  Reporting modules
[2]  Import modules
[2]  Exploitation modules
[2]  Discovery modules

[recon-ng][default] >

如果你完全不知道应该进行的下一步操作,我想你需要查看帮助

[recon-ng][default] > help

Commands (type [help|?] <topic>):
---------------------------------
add             将记录添加到数据库中
back            退出当前回话
delete          从数据库中删除记录
exit            退出框架
help            显示帮助
keys            管理框架API键
load            加载指定模块
pdb             打开 Python 的 Debug 回话
query           查询数据库
record          Records commands to a resource file
reload          重新加载所有模块
resource        Executes commands from a resource file
search          搜索可用的模块
set             设置模块的选择
shell           执行shell命令
show            显示各种框架项目
snapshots       管理工作区快照
spool           Spools output to a file
unset           附件模块选择
use             加载指定的模块
workspaces      管理工作区

接下来你应该需要了解你可以使用的模块有哪些

[recon-ng][default] > show modules

  Discovery
  ---------
  省略2个

  Exploitation
  ------------
  省略2个

  Import
  ------
  省略2个

  Recon
  -----
  省略76个

  Reporting
  ---------
  省略2个

对了查看一下 show 命令的选项,可能会更利于你掌握 Recon-NG

[recon-ng][default] > show
Shows various framework items

Usage: show [banner|companies|contacts|credentials|dashboard|domains|hosts|keys|leaks|locations|modules|netblocks|options|ports|profiles|pushpins|repositories|schema|vulnerabilities|workspaces]

那我们可以使用一个 bing_api

[recon-ng][default] > use recon/domains-hosts/bing_domain_api
[recon-ng][default][bing_domain_api] > show options

  Name    Current Value  Required  Description
  ------  -------------  --------  -----------
  LIMIT   0              yes       limit total number of api requests (0 = unlimited)
  SOURCE  default        yes       source of input (see 'show info' for details)

[recon-ng][default][bing_domain_api] > set SOURCE bing.com
SOURCE => bing.com
[recon-ng][default][bing_domain_api] > run

--------
BING.COM
--------
[!] FrameworkException: API key 'bing_api' not found. Add API keys with the 'keys add' command.

最后一排错误提示,很让人出乎意料,可是在此之前你并未对该网站进行 api 的添加,这也是情理之中的,关于 api ,使用 keys 命令来进行操作。至于添加的内容,请查看官方指南的 Acquiring API Keys(获取 api 密钥)

[recon-ng][default][bing_domain_api] > keys list

 +---------------------------+
  |        Name       | Value |
  +---------------------------+
  | bing_api          |       |
  | builtwith_api     |       |
  | facebook_api      |       |
  | facebook_password |       |
  | facebook_secret   |       |
  | facebook_username |       |
  | flickr_api        |       |
  | fullcontact_api   |       |
  | google_api        |       |
  | google_cse        |       |
  | instagram_api     |       |
  | instagram_secret  |       |
  | ipinfodb_api      |       |
  | jigsaw_api        |       |
  | jigsaw_password   |       |
  | jigsaw_username   |       |
  | linkedin_api      |       |
  | linkedin_secret   |       |
  | pwnedlist_api     |       |
  | pwnedlist_iv      |       |
  | pwnedlist_secret  |       |
  | shodan_api        |       |
  | twitter_api       |       |
  | twitter_secret    |       |
  +---------------------------+
[recon-ng][default][bing_domain_api] > keys add bing_api <你的api密钥内容>
[*] Key 'bing_api' added.
CE安全网
CE安全网广告位招租

发表评论

您必须登录才能发表评论!