百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

介绍一个渗透测试中使用的WEB扫描工具:Skipfish

moboyou 2025-07-02 05:46 18 浏览

Skipfish简介

Skipfish是一款主动的、轻量级的Web应用程序安全侦察工具。它通过执行递归爬取和基于字典的探测来为目标站点准备交互式站点地图。该工具生成的最终报告旨在作为专业Web应用程序安全评估的基础,就是主要关注的点是程序代码层面的问题。

Skipfish特点

主要特征是这些:

  • 高速:纯C代码,高度优化的HTTP处理,最小的CPU占用空间,能够轻松实现响应目标每秒两千个请求;
  • 易于使用:启发式的使用方式,支持各种古怪的Web框架和混合技术站点,具有自动学习功能,动态词汇表创建和表单自动完成功能;
  • 尖端的安全逻辑:高质量,低误报率,拆分安全检查,能够发现一系列细微的缺陷,包括矢量注入。

Skipfish实际操作

Skipfish在kali系统中是预装的,这里就不介绍具体安装了。

首先还是可以通过-h的命令查看Skipfish的帮助说明,可以看到支持的各种参数和使用方式:

其中有些比较实用的参数可以记一下:

-I	大写i,当传入url文档时,只检查包含'string'的 URL
-X	不检查包含'string'的URL,例如:logout
-K	不对指定参数进行Fuzz测试
-D	跨站点爬另外一个域
-l	每秒最大请求数
-m	每IP最大并发连接数
--config	指定配置文件

当遇到扫描速度太快,触发了目标站点的连接数限制,通过降低-m和-l数值即可。

扫描目标网址:

skipfish -o 扫描结果存放目录 目标地址

在正式开始扫描之前会有一些提示语,比如需要中途停止该怎么做、按空格可以切换到扫描详细信息之类的。

当被扫描的是多个url时,可以将这多个url写入到一个txt文档里,让skipfish遍历txt中的url进行扫描:

skipfish -o 扫描结果存放目录 @存了url的文档

如果url.txt文档中只有符合某些过滤条件的url才需要被扫描,skipfish也提供了过滤功能,可以通过参数-I实现:

# url中必须包含字符串:/dvwa/ 才会被扫描
skipfish -o 扫描结果存放目录 -I /dvwa/ http://192.168.98.169/dvwa/

扫描结束后会给出这个提示:

不过我这个是被手动停止的,因为完整扫描太耗时间了。

这是扫描后给出的报告:

前面说过skipfish可以使用字典可发现隐藏目录,具体方式如下:

skipfish -o 扫描结果存放目录 -S 字典 -W 将特殊的字符串写入到指定字典 http://192.168.98.169/dvwa/

kali中有一些提供给skipfish使用的字典:

上面这些字典都可以通过-S进行使用。

skipfish提供了有些身份认证的参数:

其中比较使用的是-A,直接跟用户名:密码,不过现在的很多web应该都不能使用了,所以这种方式做测试还行,对于真正的入侵、渗透,就不是很好用了。

还有一个-C可以直接使用本地的cookie,这个相对实用一下,前提是你有cookie。一般有账号就能在本地生成cookie,可以在浏览器上找到:

在skipfish中使用cookie:

skipfish -o dvwaResult1 -C "PHPSESSID=affdcb6c159f4e4524dde145a410f80c" -C "security=low" -I /dvwa/ http://192.168.0.101/dvwa/

除了上面两种认证方式,skipfish还有一种提交表单的方式来进行认证,不过说实话,现在的登录都是有验证码的,直接提交账户和密码,大概率是不会成功的,不过还是介绍一下:

具体的操作:

skipfish -o dvwaResult2 --auth-form http://192.168.0.101/dvwa/login.php  --auth-user admin --auth-pass password --auth-verify-url http://192.168.0.101/dvwa/index.php -I /dvwa/ -X logout.php http://192.168.0.101/dvwa/

上面这样传,其实是让skipfish自己判断user和password填入的位置。当skipfish无法准确填入user和password时,可以认为指定填入位置:

skipfish -o dvwaResult3 --auth-form http://192.168.0.101/dvwa/login.php --auth-form-target http://192.168.0.101/dvwa/login.php --auth-user-field username  --auth-user admin --auth-pass-field password --auth-pass password --auth-verify-url http://192.168.0.101/dvwa/index.php -I /dvwa/ -X logout.php http://192.168.0.101/dvwa/

参数--auth-form-target后面跟的是接收表单的地址,有些网站接收表单的网址和提交表单网址不是同一个。

参数--auth-user-field和--auth-pass-field后面跟的是页面元素中的name属性:

总结

整体来说skipfish的功能还是比较不错的,对于内部测试来说是一个比较好用的工具。对于公网中的实际渗透工作,其实限制还是挺多的。

相关推荐

产品页不显示价格?用这招让独立站转化率翻倍

“客户急得直拍桌子:‘为什么美国用户点进来看不到价格?’”建站设计师小夏盯着屏幕上的报错提示——结构化数据没写对,Google爬虫根本没抓到价格信息。这是一家卖手工珠宝的跨境店,主推定制款,价格因材质...

FOGProject 1.5.10 开源 可以使用PXE、PartClone和Web GUI

FOGProject起点介绍FOG是一个免费的开源克隆/镜像/救援套件/库存管理系统。FOG可以使用PXE、PartClone和WebGUI来对WindowsXP、Vista、Windows7...

AI+隐私计算:淘宝API的下一站,数据开放与安全的双重革命

淘宝API分类全解析:从商品管理到智能营销的接口生态引言在电商行业数字化转型中,淘宝API(ApplicationProgrammingInterface)作为连接平台与开发者的技术桥梁,已成为实...

PHP MySQLi基础教程 MySQL 创建数据库

数据库存有一个或多个表。你需要CREATE权限来创建或删除MySQL数据库。使用MySQLi和PDO创建MySQL数据库CREATEDATABASE语句用于在MySQL中创...

PHP跑不动?服务器慢成蜗牛,客户投诉不断.

最近公司电商系统总卡,用户下单页面半天打不开,客服电话快被打爆。技术主管说PHP性能不行,我们几个新来的程序员被拉来紧急开会。老王翻出一本破旧的《高性能PHP开发》说:"这本书早该读了"...

PHP+UniApp:低成本打造外卖系统横扫App+小程序+H5全平台

在餐饮行业数字化转型中,外卖系统开发常面临两大痛点:高昂的开发成本(需独立开发App、小程序、H5)和多端维护的复杂性。PHP+UniApp的组合通过技术复用与跨平台能力,为中小商家和开发者提供了“降...

PHP分布式锁超卖方案以及高并发优化

在PHP的生态中,是通过多进程的方式去优化程序性能的。在单机架构情况下防止超卖不像JAVA那样可以使用自身的锁机制实现。需要借助第三方程序来实现,如:数据库、Redis等。接下来我们通过一个基于Re...

PHP实战经验之系统如何支撑高并发

高并发系统各不相同。比如每秒百万并发的中间件系统、每日百亿请求的网关系统、瞬时每秒几十万请求的秒杀大促系统。他们在应对高并发的时候,因为系统各自特点的不同,所以应对架构都是不一样的。另外,比如电商平台...

PHP高并发架构:三招让Redis与MySQL数据强同步(含黑科技方案)

技术段位:百万级并发架构师必修实战价值:数据不一致窗口期<50ms|零代码侵入方案|抗亿级流量冲击一、颠覆认知:99%的项目在用错误方案(你中招了吗?)1.经典双删策略的致命缺陷//...

基于Python的仓库库存管理系统的设计和实现

《基于Python的仓库库存管理系统的设计和实现》该项目采用技术Python的django框架、mysql数据库,项目含有源码、论文、PPT、配套开发软件、软件安装教程、项目发布教程、核心代码介绍视...

如何在Redis中处理并发写入php电商网站库存超卖示例

经常会遇到需要在项目中处理并发的情况。今天就用redis来处理并发,解决电商项目中的库存超卖常见需求。项目背景电商网站需要处理高并发的购买请求,每个请求都会减少对应商品的库存数量。为了避免库存超卖,我...

【新书推荐】6.1 鼠标基础知识(鼠标的基础操作)

第六章鼠标Windows程序以其友好的用户交互体验著称。键盘和鼠标都是用户与Windows程序交互的工具。键盘一般被当作用来输入和管理文本数据的设备,鼠标则被看作是用来绘制和处理图形对象的设备。上一...

FFmpeg学习(1)开篇(ffmpeg 教程)

FFmpeg学习(1)开篇FFmpeg学习(2)源码编译,环境配置为什么要学习FFmpeg本人希望打算深入研究音视频领域,音视频领域的内容很多,我自己打算从几方面循序渐进:FFmpeg常用功能实践,...

华纳云:服务器监控系统中最常用的性能指标有哪些

  服务器监控系统通常用于监视服务器的性能和健康状况,以确保其正常运行并及时发现问题。以下是服务器监控系统中最常用的性能指标:  1.CPU使用率:CPU使用率是指服务器上的中央处理器(CPU...

实战线上 Linux 服务器深度优化指南

1.系统基础配置优化优化目标:建立统一、安全、稳定的系统基础环境,为后续优化奠定基础。1.1规范化主机命名采用"功能-地域-机房-机柜-编号"命名法,这样便于资产管理和定位。#采用...