📜  Evine – Kali Linux 中的交互式网络爬虫(1)

📅  最后修改于: 2023-12-03 15:30:39.397000             🧑  作者: Mango

Evine – Kali Linux 中的交互式网络爬虫

Evine是Kali Linux中的一个交互式网络爬虫工具,它可以帮助程序员在目标网站上自动化爬取数据并进行分析。它的特点是可以通过一个命令行界面实现交互式操作,而且支持多种网络协议,如HTTP、HTTPS、FTP等。下面是几个关键特性:

  • 可定制的用户代理,便于伪装身份
  • 可配置的爬取深度,避免不必要的延时
  • 可以自动识别和跳过登录页面,避免因为权限问题而失败
  • 可以保存结果到文件中,并支持多种输出格式,如CSV、XML、JSON等
  • 支持多线程异步处理,提高爬取速度
  • 支持代理服务器,便于爬取远程网站
安装和启动

Evine可以通过Kali Linux的软件仓库进行安装,使用下面的命令即可:

apt-get install evine

安装完成后,可以直接运行evine命令来打开交互式界面:

evine

启动成功后,就可以在命令行中输入各种命令来进行爬取和分析了。

爬取网站

一个简单的爬取示例如下:

evine> set target https://www.example.com
evine> set depth 2
evine> set user_agent Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:44.0) Gecko/20100101 Firefox/44.0
evine> set output_format csv
evine> set output_file /tmp/example-output.csv
evine> crawl

上述命令的效果是爬取https://www.example.com网站的前2级页面,并将结果保存到/tmp/example-output.csv文件中,文件格式为CSV。

检测漏洞

Evine可以用于检测目标网站的漏洞,例如SQL注入、跨站脚本等。下面是一个简单的漏洞检测示例:

evine> set target https://www.example.com/search?q='
evine> set depth 1
evine> set user_agent Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:44.0) Gecko/20100101 Firefox/44.0
evine> set payload "' OR 1=1#"
evine> set payload_type url
evine> check

上述命令的效果是检测https://www.example.com/search?q=页面是否存在SQL注入漏洞,使用的payload是' OR 1=1#。如果存在漏洞,Evine会给出提示。

代理和认证

在爬取远程网站的时候,经常需要使用代理服务器或者进行认证。对于这种情况,Evine也提供了对应的命令:

evine> set proxy http://proxy.example.com:8080
evine> set auth user:password

上述命令中,set proxy命令用于设置代理服务器的地址,set auth命令用于设置认证用户名和密码。

参考文献