SecCrawler 研究人员安全日报爬虫推送程序

SecCrawler 研究人员安全日报爬虫推送程序

SecCrawler 简介

SecCrawler 是一个跨平台的方便安全研究人员获取每日安全日报的爬虫和机器人推送程序,目前爬取范围包括先知社区、安全客、Seebug Paper、跳跳糖、奇安信攻防社区、棱角社区、洞见微信聚合,机器人推送范围包括企业微信机器人、飞书机器人、钉钉机器人、Server酱、HexQBot(QQ群机器人)、WgpSecBot(微信机器人),持续更新中。

程序使用yml格式的配置文件,第一次使用时请使用-init参数在当前文件夹生成默认配置文件,在配置文件中设置爬取的网站和推送机器人相关配置,目前包括在内的网站和推送的机器人在Features中可以查看,可以设置每日推送的整点时间以及是否开启API。

SecCrawler 研究人员安全日报爬虫推送程序

支持的爬取网站列表:

支持的推送机器人列表:

参数列表

  _____            _____                    _           
 / ____|          / ____|                  | |          
| (___   ___  ___| |     _ __ __ ___      _| | ___ _ __ 
 \___ \ / _ \/ __| |    | '__/ _  \ \ /\ / / |/ _ \ '__|
 ____) |  __/ (__| |____| | | (_| |\ V  V /| |  __/ |   
|_____/ \___|\___|\_____|_|  \__,_| \_/\_/ |_|\___|_|   							  
SecCrawler dev

选项:
  -c 文件
    	使用的配置文件,或使用-init(默认为"config.yml")生成指定名称的配置文件
  -help
    	帮助信息
  -init
    	生成配置文件
  -test
    	运行一次后停止
  -version
    	输出版本信息

安装方法

下载最新的SecCrawler:

或者从源码编译安装

git clone https://github.com/Le0nsec/SecCrawler.git
cd SecCrawler
go build .

配置文件详情

SecCrawler 研究人员安全日报爬虫推送程序

config.yml配置文件模板注释:

# 设置Selenium使用的ChromeDriver路径,支持相对路径或绝对路径(如果不爬取先知社区可以不用设置)
ChromeDriver: ./chromedriver/linux64

Proxy:
  ProxyUrl: http://127.0.0.1:7890
  CrawlerProxyEnabled: false # 开启爬虫代理
  BotProxyEnabled: false # 开启请求机器人代理

Cron:
  enabled: false
  time: 11 # 设置定时任务每天整点爬取推送时间,范围 0 ~ 23(整数)

Api:
  enabled: false
  debug: false
  host: 127.0.0.1
  port: 8080
  auth: auth_key_here # 请求api需要带上Authorization头

Crawler:
  # 棱角社区
  # https://forum.ywhack.com/forum-59-1.html
  EdgeForum:
    enabled: false
  # 先知安全技术社区
  # https://xz.aliyun.com/
  XianZhi:
    enabled: false
  # SeebugPaper(知道创宇404实验室)
  # https://paper.seebug.org/
  SeebugPaper:
    enabled: false
  # 安全客
  # https://www.anquanke.com/
  Anquanke:
    enabled: false
  # 跳跳糖
  # http://tttang.com/
  Tttang:
    enabled: false
  # 奇安信攻防社区
  # https://forum.butian.net/community/all/newest
  QiAnXin:
    enabled: false
  # 洞见微信聚合
  # http://wechat.doonsec.com/
  DongJian:
    enabled: false

Bot:
  # 企业微信群机器人
  # https://work.weixin.qq.com/api/doc/90000/90136/91770
  WecomBot:
    enabled: false
    key: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    timeout: 2
  # 飞书群机器人
  # https://open.feishu.cn/document/ukTMukTMukTM/ucTM5YjL3ETO24yNxkjN
  FeishuBot:
    enabled: false
    key: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    timeout: 2
  # 钉钉群机器人
  # https://open.dingtalk.com/document/robots/custom-robot-access
  DingBot:
    enabled: false
    token: xxxxxxxxxxxxxxxxxxxx
    timeout: 2
  # HexQBot
  # https://github.com/Am473ur/HexQBot
  HexQBot:
    enabled: false
    api: http://xxxxxx.com/send
    qqgroup: 0
    key: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    timeout: 2
  # Server酱
  # https://sct.ftqq.com/
  ServerChan:
    enabled: false
    sendkey: xxxxxxxxxxxxxxxxxxxx
    timeout: 2
  # WgpSecBot
  # https://bot.wgpsec.org/
  WgpSecBot:
    enabled: false
    key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    timeout: 2

使用方法:

  • 使用-h/-help查看详细命令:
  • 使用-c指定使用的配置文件,或者配合-init生成指定文件名的配置文件
  • 使用-test参数执行一次程序后退出
  • API文档
  • 注意请求API需要带上Authorization头

如果开启了定时任务,程序使用定时任务每天根据设置好的时间整点自动运行,编辑好相关配置后后台运行即可,示例运行命令:

$ nohup ./SecCrawler >> run.log 2>&1 &
# 或者使用screen
$ screen ./SecCrawler
$ ctrl a+d / control a+d # 回到主会话

注:由于在爬取先知安全社区时程序使用了 Selenium,用户需要手动下载ChromeDriverChrome浏览器。

ChromeDriver镜像站:http://npm.taobao.org/mirrors/chromedriver/

Chrome浏览器可以访问chrome://version/查看版本

命令行可以使用google-chrome-stable --version查看版本

程序旨在帮助安全研究者自动化获取每日更新的安全文章,适用于每日安全日报推送,爬取的安全社区网站范围和支持推送的机器人持续增加中,欢迎在issues中提供宝贵的建议。

? 目前 SecCrawler 已在MacOS Apple silicon 、Ubuntu 20.04运行测试通过。

项目地址:

GitHub

https://github.com/Le0nsec/SecCrawler

转载请注明出处及链接

Leave a Reply

您的电子邮箱地址不会被公开。