ReconPi自动化侦察:daily脚本与Cron任务设置,实现24小时监控

📅 2026/7/18 10:41:40 👁️ 阅读次数 📝 编程学习
ReconPi自动化侦察:daily脚本与Cron任务设置,实现24小时监控

ReconPi自动化侦察:daily脚本与Cron任务设置,实现24小时监控

【免费下载链接】ReconPiReconPi - A lightweight recon tool that performs extensive scanning with the latest tools.项目地址: https://gitcode.com/gh_mirrors/re/ReconPi

ReconPi是一款轻量级侦察工具,能够使用最新工具执行广泛的扫描。本文将详细介绍如何利用ReconPi中的daily脚本结合Cron任务设置,实现对目标域名的24小时自动化监控,让你的安全侦察工作如虎添翼。

一、ReconPi daily脚本探秘:自动化侦察的核心引擎 🚀

ReconPi的自动化侦察能力很大程度上依赖于位于scripts/daily的脚本文件。这个脚本是实现定期监控的关键,它能够自动完成一系列侦察任务,包括获取最新的DNS解析器、子域名枚举、新子域名检测以及结果通知等功能。

1.1 获取新鲜DNS解析器

脚本的第一步是获取最新的DNS解析器列表,这对于确保子域名枚举的准确性至关重要。通过以下命令,脚本从指定的GitHub仓库获取最新的解析器列表,并将其保存到指定目录:

wget https://raw.githubusercontent.com/BBerastegui/fresh-dns-servers/master/resolvers.txt -O $HOME/assets/$1/ips/resolvers.txt

1.2 子域名枚举与跟踪

接下来,脚本使用Amass工具进行子域名枚举。Amass是一款功能强大的子域名枚举工具,能够通过多种方式发现目标域名的子域名。脚本中相关命令如下:

amass enum -active -nf $HOME/assets/$1/subdomains/subdomains -d $1 -config $HOME/ReconPi/configs/config.ini -rf $HOME/assets/$1/ips/resolvers.txt -o $HOME/assets/$1/subdomains/amass_results.txt -dir $HOME/assets/$1/subdomains/regular_amass_scan -noalts

枚举完成后,脚本还会使用Amass的track功能来跟踪子域名的变化,找出新发现的子域名:

RESULT=$(amass track -d $1 -config $HOME/ReconPi/config.ini -last 2 -dir $HOME/assets/$1/subdomains/regular_amass_scan | grep Found | awk '{print $2}')

1.3 新子域名筛选与保存

通过跟踪得到的结果,脚本会进一步筛选出真正的新子域名,并将其添加到子域名列表中:

FINAL_RESULT=$(while read -r d; do if grep --quiet "$d" $HOME/assets/$1/subdomains/subdomains; then continue; else echo "$d"; fi; done <<< $RESULT) if [[ -z "$FINAL_RESULT" ]]; then FINAL_RESULT="No new subdomains were found" else echo "$FINAL_RESULT" >> $HOME/assets/$1/subdomains/subdomains fi

1.4 结果通知机制

最后,脚本会将结果通过Slack通知发送出去,让你及时了解侦察情况。你只需在脚本中配置好Slack Webhook URL即可:

# SLACK_WEBHOOK_URL="https://hooks.slack.com/services/xxx/xxx/xxx" echo $FINAL_RESULT | slackcat -u $SLACK_WEBHOOK_URL

二、Cron任务设置:实现24小时不间断监控 ⏰

要实现24小时自动化监控,我们需要将daily脚本设置为定时任务。在Linux系统中,Cron是实现这一功能的理想选择。通过Cron,我们可以让脚本在指定的时间自动运行,无需人工干预。

2.1 Cron任务基本语法

Cron任务的语法格式如下:

* * * * * command - - - - - | | | | | | | | | +----- 星期几 (0 - 6) (星期天=0) | | | +------- 月份 (1 - 12) | | +--------- 日期 (1 - 31) | +----------- 小时 (0 - 23) +------------- 分钟 (0 - 59)

2.2 创建ReconPi自动化任务

假设我们希望daily脚本每天凌晨3点运行,以监控目标域名example.com,我们可以使用以下步骤设置Cron任务:

  1. 打开终端,输入crontab -e命令编辑Cron任务列表。

  2. 在打开的编辑器中,添加以下一行内容:

0 3 * * * /path/to/ReconPi/scripts/daily example.com

其中,0 3 * * *表示每天凌晨3点执行任务,/path/to/ReconPi/scripts/daily是daily脚本的实际路径,example.com是你要监控的目标域名。

  1. 保存并退出编辑器。Cron会自动生效新的任务设置。

2.3 验证Cron任务是否生效

你可以通过以下命令查看当前用户的Cron任务列表,确认刚刚添加的任务是否存在:

crontab -l

如果看到你添加的任务行,说明Cron任务设置成功。

三、ReconPi主脚本recon.sh:全面侦察功能的基石 🛠️

除了daily脚本,ReconPi的主脚本recon.sh也为自动化侦察提供了强大的支持。它包含了从子域名收集、IP收集、端口扫描到漏洞检测等一系列完整的侦察流程。

3.1 主要功能模块

recon.sh脚本中定义了多个关键的功能函数,如:

  • gatherSubdomains:使用多种工具(如sublert、subfinder、assetfinder、amass等)收集子域名。
  • gatherIPs:通过dnsprobe工具从子域名中提取IP地址。
  • portScan:使用naabu工具对发现的IP地址进行端口扫描。
  • runNuclei:利用nuclei工具检测各种漏洞,如CVE漏洞、默认凭证、安全配置错误等。

3.2 与daily脚本协同工作

daily脚本主要负责定期监控和发现新的子域名,而recon.sh则可以在发现新目标时进行更全面深入的侦察。你可以根据实际需求,在daily脚本中适当调用recon.sh的相关功能,或者在Cron任务中设置recon.sh定期运行,以实现更全面的自动化侦察。

四、配置文件管理:让自动化侦察更精准 🎯

ReconPi的配置文件位于configs/目录下,包括config.iniconfig.yamlnaabu.conftokens.txt等。这些配置文件对于确保自动化侦察的顺利进行和结果的准确性非常重要。

4.1 关键配置文件

  • config.iniconfig.yaml:这两个是Amass和subfinder等工具的配置文件,你可以在其中设置API密钥、解析器、扫描模式等参数。
  • naabu.conf:naabu端口扫描工具的配置文件,可以设置扫描端口范围、速率限制等。
  • tokens.txt:用于存储各种API密钥和Webhook URL,如Slack和Discord的Webhook URL,确保通知功能正常工作。

4.2 配置文件的重要性

正确配置这些文件可以显著提高侦察效率和准确性。例如,在tokens.txt中正确设置Slack或Discord的Webhook URL,才能确保daily脚本的通知功能正常工作,让你及时获取侦察结果。

五、总结:打造属于你的24小时自动化侦察系统 🚀

通过ReconPi的daily脚本和Cron任务设置,你可以轻松构建一个24小时不间断的自动化侦察系统。这个系统能够定期监控目标域名,发现新的子域名和潜在漏洞,并及时通过Slack或Discord通知你。结合ReconPi主脚本recon.sh的强大功能和合理的配置文件管理,你的安全侦察工作将变得更加高效、精准和省心。

现在,就动手设置你的ReconPi自动化侦察系统吧!让它成为你网络安全工作中的得力助手,为你守护网络的安全。记住,持续的监控和及时的响应是网络安全的关键,而ReconPi正是你实现这一目标的理想工具。

【免费下载链接】ReconPiReconPi - A lightweight recon tool that performs extensive scanning with the latest tools.项目地址: https://gitcode.com/gh_mirrors/re/ReconPi

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考