首页 > 其他分享 >【整理】【信息收集】web渗透测试

【整理】【信息收集】web渗透测试

时间:2024-08-30 22:03:14浏览次数:13  
标签:web git 收集 Web 渗透 WAF 应用程序 kali com

一、WAF探测
   1.1 什么是WAF
   1.2 WAF常见的部署方式:
   1.3 WAF的作用
   1.4 如何触发waf
   1.5 WAF的分类
   1.6 如何探测WAF

二、操作系统识别

三、Git信息收集
    3.1 Git信息泄露原理
    3.2 github搜索技巧
    3.3 Git信息泄露利用方式






原创 LULU 红队蓝军

一、WAF探测

1.1 什么是WAF

Web应用程序防火墙(也称为:网站应用级入侵防御系统。英文:Web Application Firewall,简称:WAF)是一种用于保护Web应用程序的安全设备。Web应用程序是指通过Web浏览器或其他Web客户端访问的应用程序。

1.2 WAF常见的部署方式:

1.3 WAF的作用

WAF的目的是保护Web应用程序免受黑客、网络攻击和数据泄漏等安全威胁的攻击。
WAF可以过滤HTTP/HTTPS协议流量,防护Web攻击,但不能过滤其他协议流量,如FTP、PoP3协议。

WAF主要是通过内置的很多安全规则来进行防御。

1、流量识别
WAF识别来自客户端的请求,并对请求进行分析。WAF可以检查请求头、请求体、Cookie、URL参数等信息,并识别其中的攻击。

2、攻击检测
WAF对识别的请求进行攻击检测。WAF可以使用多种技术来检测攻击,例如正则表达式、特征匹配、行为分析等。WAF可以检测多种攻击,包括SQL注入、XSS、CSRF、命令注入等。

3、攻击响应
WAF根据检测结果采取相应的措施,例如拦截请求、阻止访问、记录事件等。WAF可以使用多种技术来响应攻击,例如重定向、报错、拦截等。

4、对Web应用进行安全审计
WAF记录所有请求和响应的详细信息,包括请求头、请求体、响应头、响应体等。WAF可以将日志发送给中央日志管理系统,以便进行分析和审计。

5、阻止SQL注入、xss、csrf、rce、源码/错误信息泄露、文件包含漏洞进行攻击、PHP代码注入、利用Shellshock漏洞进行攻击、利用Session会话ID不变的漏洞进行攻击、根据判断IP地址归属地来进行IP阻断等

1.4 如何触发waf

1、关键字:比如SQL注入漏洞SELECT、 UPDATE、DELETE、DROP、 UNION、 OR、AND、sleep、 #、 '、 " 、;等
2、违反内容安全策略(CSP):尝试违反Web应用程序设定的内容安全策略
3、异常流量模式:如DDoS攻击,通过发送大量请求来攻击器。
4、使用特定的HTTP方法:如使用不常见的HTTP方法可能被WAF视为可疑行为。
5、请求参数异常:如参数名或值过长,或者包含不寻常的字符组合。如:本地文件包含漏洞 file=../../../../../etc/passwd
6、数据包大小异常:发送超出正常范围的数据包大小,可能会触发WAF的规则。
7、使用黑名单中的User-Agent:某些User-Agent字符串可能与已知的爬虫或恶意工具相关联。

1.5 WAF的分类

硬WAF

1、硬件WAF通常是一种独立设备,由厂商安装,它可以与网络交换机、路由器等设备集成,拦截来自外部网络的流量,并对Web应用程序进行保护
2、适用于高流量的Web应用程序

软WAF

1、软件WAF通常是一种安装在服务器上的应用程序,可以通过修改Web服务器或代理服务器的配置文件实现。软件WAF可以与多种Web服务器和应用程序框架集成,部署在Apache、Nginx、IIS等Http Server中
2、适用于多种Web应用程序

云WAF

1、云WAF通常是一种基于云的服务,可以将Web应用程序的流量转发到云端进行处理。云WAF可以提供全球分布的节点,从而提高Web应用程序的可用性和性能。市面上常见的阿里云、腾讯云、华为云、百度云等
2、适用于高可用性和高性能的Web应用程序

常见waf厂商

国内:宝塔、安恒,绿盟,启明星辰,360磐云、长亭、安全狗、阿里云、腾讯云、华为云、百度云

国外:飞塔,梭子鱼,Imperva

1.6 如何探测WAF

WAFw00f

介绍:WAFw00f是一个用于探测网站是否存在Web应用程序防火墙的工具,它通过发送正常和异常的HTTP请求,结合特征分析和算法推理,来识别不同类型的WAF

用法:wafw00f https://www.xxxx.com

namp

介绍:网络扫描工具,它包含了一些WAF指纹识别的脚本,可以用来探测WAF的存在

用法:nmap www.xxx.com --script=http-waf-detect.nse

SQLMap

介绍:主要用于检测和利用SQL注入漏洞,但它也包含了一些WAF指纹识别的功能。

用法:sqlmap -u "xxx.com?id=1" --identify-waf

go-test-waf

这是一个使用Go语言编写的WAF测试工具,可以自动测试WAF的拦截能力和规则配置。

用法:通过DockerHub库直接获取,拉取项目库docker pull wallarm/gotestwaf

二、操作系统识别

常见的服务器操作系统:linux,windows

识别操作系统常见方法

1、看字母大小写windows对大小写不敏感,Linux敏感。

2、看ping值,Linux系统的TTL值为64,Windows系统的TTL值为128。(TTL表示本地主机通过网络连接目标主机时经过路由器的个数情况,因ping的域名不同导致2的N次方变化不同)

linux

windows

3、nmap -O ip或者域名 //对目标主机的操作系统进行扫描

4、抓包:某些中间件只能用于特定的操作系统,如IIS只能用于windows,nginx不能用于windows,通过应答包的server字段,我们能获取目标中间件信息,从而来判断目标服务器操作系统类型。

三、Git信息收集

在渗透测试的信息收集阶段,可以去Github搜索与目标有关的信息,开发人员将代码上传到代码库的时候,有可能连一些重要的配置信息也上传了。

比如将包含了账号密码、密钥等配置文件的代码上传了,导致攻击者能发现并进一步利用这些泄露的信息,就是一个典型的GitHub敏感信息泄露漏洞。

3.1 Git信息泄露原理

1、把私有仓库/隐私文件提交到了github

2、部署项目的时候,不小心把.git文件一起打包进去,放到web网站下,如.java,.class

.git/logs/HEAD 存储了git的log信息,可以找到历史的commit项
.git/index 缓存git add的文件,暂存区
.git/refs/stash git stash 把代码存入缓存区
.git/refs/heads/master 记录了master的commit的hash
.git/objects/pack/.pack

3.2 github搜索技巧

kali in:file    搜索文件中包含kali的代码
kali in:path    搜索路径中包含kali的代码
kali in:path,file    搜索路径,文件中包含kali的代码
filename:config.php language:php 搜索config.php文件,且语言为php
kali topics:>5 标签数量大于5
kali size:<1000    文件大小小于1000的(找字典文件)
kali stars:10..50    收藏数量在10到50间
kali pushed:>2021-08-25    搜索在2021年8月15号之后的
kali create:>=2021-06-01    创建时间
kali pushed:<2021-01-01 -language:java (-表示不要)

3.3 Git信息泄露利用方式

1、找到.git

  • 通过目录扫描来发现敏感文件和目录
  • 查看robots.txt文件,可能存在./git
  • 利用搜索引擎,intitle:"Index of /.git" 或者Google中搜索site:example.com inurl:.git

2、把.git下载到本地

使用http请求下载

- 如果找到了公开的.git目录,可以直接通过浏览器或命令行工具(如wget或curl)访问.git目录下的文件和子目录

假设发现了公开的.git目录,其URL为 http://example.com/.git/
wget --recursive --no-parent --no-host-directories http://example.com/.git/

Git协议克隆仓库

假设要克隆一个名为 “example.git的仓库,URL 为https://github.com/username/example.git`,我们可以执行以下命令

git clone https://github.com/username/example.git

使用专门的工具

有一些工具如`GitHack`、`GitDorker`等,它们专门设计用来利用`.git`目录泄露的问题,可以自动化下载和恢复Git仓库的过程。

手动下载

如果自动化工具不适用,可以手动浏览`.git`目录,逐个下载文件和目录。这通常涉及到下载`HEAD`、`config`、`index`、`logs`、`objects`和`refs`等关键组件

举例:结合google语法,GitHub上做信息收集。

以下是一个靶场DC7的网站

基于该信息,通过谷歌语法进行查询

通过GitHub,能够找到数据库的用户名和密码泄露

也能够将.git下载到本地

wget --recursive --no-parent --no-host-directories https://github.com/Dc7User/staffdb.git

❗注意:在没有明确授权的情况下,不应该尝试下载他人的.git目录。

参考

标签:web,git,收集,Web,渗透,WAF,应用程序,kali,com
From: https://www.cnblogs.com/o-O-oO/p/18389585

相关文章

  • 探索VB与ASP.NET的融合艺术:Web开发的高效实践
    探索VB与ASP.NET的融合艺术:Web开发的高效实践在Web开发的多彩世界中,ASP.NET是构建动态网站和网络应用的强大框架。而VisualBasic(VB),以其简洁的语法和易于理解的特性,成为了ASP.NET开发中的一个优雅选择。本文将详细解释如何在VisualBasic中使用ASP.NET进行Web开发,展示如何......
  • 【信息收集】网络空间测绘FOFA,查询语法最全使用方法(图文解析)
    高级搜索基础类别标记类(SpecialLabel)协议类(type=service)网站类(type=subdomain)证书类地理位置(Location)时间类(Lastupdatetime)独立IP语法(独立IP系列语法,不可和上面其他语法共用)查询基础语法案例html搜索title标题搜索domain域名搜索host主机名搜索o......
  • 【信息收集】移动资产收集
    一、微信小程序支付宝小程序二、app软件搜索一、微信小程序支付宝小程序现在很多企业都有小程序,可以关注企业的微信公众号或者支付宝小程序,或关注运营相关人员,查看朋友圈,获取小程序。https://weixin.sogou.com/weixin?type=1&ie=utf8&query=%E6%8B%BC%E5%A4%9A%E5%A4%9A......
  • 【信息收集】cms识别
    一、云悉二、潮汐指纹三、CMS指纹识别四、whatcms五、御剑cms识别收集好网站信息之后,应该对网站进行指纹识别,通过识别指纹,确定目标的cms及版本,方便制定下一步的测试计划,可以用公开的poc或自己累积的对应手法等进行正式的渗透测试。一、云悉http://www.yunsee.cn/inf......
  • 【信息收集】非常规操作
    1、如果找到了目标的一处资产,但是对目标其他资产的收集无处下手时,可以查看一下该站点的body里是否有目标的特征,然后利用网络空间搜索引擎(如fofa等)对该特征进行搜索,如:body=”XX公司”或body=”baidu”等。该方式一般适用于特征明显,资产数量较多的目标,并且很多时候效果拔群。2、当......
  • 基于javaweb的smile旅行社管理系统的设计与实现 毕业设计-附源码02508
    摘 要随着旅游行业的蓬勃发展,旅行社作为连接旅游资源和游客的桥梁,其管理效率和服务质量直接影响着客户满意度和企业竞争力。为了更好地满足市场需求,提升旅行社的管理水平和运营效率,设计与实现一套高效、稳定的旅行社管理系统显得尤为重要。基于JavaWeb的Smile旅行社管......
  • WebRTC协议下的视频汇聚融合技术:EasyCVR构建高效视频交互体验
    视频汇聚融合技术是指将来自不同源、不同格式、不同网络环境的视频流进行集中处理、整合和展示的技术。随着视频监控、远程会议、在线教育、直播娱乐等领域的快速发展,视频数据的规模急剧增长,对视频处理能力和效率提出了更高要求。视频汇聚融合技术通过统一的平台或系统,实现了视频......
  • webView中,无法利用JS监听APP原生返回后事件
    描述:用uniapp开发的APP,内容页用webView内嵌的h5做的;现在有个需求,在A页面点击新增,uni.navigateTo打开B页面,然后在B页面新增修改完数据之后,uni.navigateBack返回A页面;需要在A页面监听;当页面回到A的时候刷新数据;问题:在A页面用js无法监听到页面返回了;尝试监听方案:1、只能监听页面......
  • CSS 样式化表格——WEB开发系列24
    表格在网页设计中扮演了重要角色,尤其是在展示数据和信息时。尽管HTML表格提供了结构化的数据展示,但要使其看起来既美观又实用,CSS样式化至关重要。一、典型的HTML表格在了解如何样式化表格之前,我们首先来看看一个典型的HTML表格结构。一个基本的HTML表格由 ​​<......
  • WebTopo连同ARMxy实现数字化转型可视化解决方案
    随着工业4.0的迅猛发展,企业对于实时数据监控、设备管理和智能化生产的需求日益增加。为了满足这些需求,WebTopo与ARMxy携手推出了一套高效、灵活的数字化转型可视化解决方案。本文将详细介绍WebTopo软件、钡铼ARMxy系列BL340嵌入式计算机,并探讨它们如何共同支持数字化转型。一、WebT......