信息收集及加密编码算法
HTTP字段分析
该类题目考核形式主要是是HTTP字段伪造,根据需要对特定字段进行补充/更改即可拿到flag
例题1:web基础$_GET , https://ctf.bugku.com/challenges/detail/id/70.html
例题2:web基础$_POST ,https://ctf.bugku.com/challenges/detail/id/71.html
例题3:请求方式 https://www.ctfhub.com/#/skilltree
例题4:HAHA浏览器 http://hackinglab.cn/ShowQues.php?type=bases hackinglab UA头
例题5:xff_referer https://adworld.xctf.org.cn/task/answer?type=web&number=3&grade=0&id=5068&page=1
信息收集
1、域名、子域名查询信息
子域名查询工具
搜索引擎查找:分白引擎和黑引擎
白引擎搜索:百度,谷歌,必应… site:baidu.com
黑暗空间引擎fofahttps://fofa.info/
zoomeye:https://www.zoomeye.org/
hunter:https://hunter.qianxin.com/
shodan:https://www.shodan.io/
2.Whois 查询
whois 指的是域名注册时留下的信息,比如留下管理员的名字、电话号码、邮箱。通过域名 whois 服 务器查询,可以查询域名归属者联系方式,以及注册和到期日期。
1.爱站工具网 https://whois.aizhan.com 站长之家 http://whois.chinaz.com
2.kali查询
3、备案信息查询
真实ip查询(cdn绕过)
1、如何判断目标存在CDN服务?
利用多节点技术进行请求返回判断(超级ping)
如果ping的结果只有一个那么就没有CDN、要是不止一个则可以判断为有CDN
没有使用CDN
2、CDN对于安全测试有那些影响?
cdn会隐藏服务器真实的ip地址,无法对目标网站的操作系统进行渗透,但cdn站点又可以理解为是目标站点的镜像站点(大多数都是静态cdn加速),拥有相同的网站架构,且cdn服务器可与站点服务器进行交互,因此sql注入,xss等漏洞并不受太大影响。
3、目前常见的CDN绕过技术有哪些?
子域名查询:
因为有些主站是做了CDN服务而子站是没有做CDN服务
邮件服务查询
因为邮箱大部分都是内部人在访问、而且访问的量也不是很大,一般是没有做CDN。
国外地址请求
因为很多的企业没有在国外部署CDN,要是用国外的地址请求、就容易找到他的真实地址。
遗留文件、扫描全网
如果目标网站存在phpinfo泄露等,可以在phpinfo中的SERVER_ADDR或_SERVER[“SERVER_ADDR”]找到真实ip
黑暗引擎搜索
fofa、shodan、hunter、zoomeye、censys
验证获取到ip是否可信可以采用第三方的ip地址查询工具经行验证。
https://get-site-ip.com/
指纹识别(CMS)
1.什么是指纹(CMS)
CMS:快速搭建网站的内容管理系统,系统模板
Web应用框架:快速二次开发的Web应用框架,例如网站,小程序
2.指纹识别的方式
线探测cms指纹站点:http://whatweb.bugscaner.com/look/
云溪在线指纹识别: https://www.yunsee.cn
Whatweb: http://www.whatweb.net
潮汐指纹: http://finger.tidesec.net
插件: wappalyzer https://www.wappalyzer.com
脚本: CMSeek https://github.com/Tuhinshubhra/CMSeek
Webfinger https://github.com/se55i0n/Webfinger
网站备案信息查询
icp备案查询https://beian.miit.gov.cn/#/Integrated/index
敏感信息
通过目录扫描能扫描到敏感文件,后台文件,数据库文件和信息泄露文件等。 扫描工具 kali 中的 dirb
御剑后台扫描珍藏版 (后台的字典)
Robots 协议(也称爬虫协议,机器人协议等)的全称是“网络爬虫排除协议”,网站通过 Robots 协议 告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取 https://ctf.show/challenges web
端口扫描
端口扫描器
nmap 和 masscan nmap 最全面的扫描器
当确定了目标大概的ip段后,可以先对ip的开放端口进行探测,一些特定服务可能开起在默认端口上,探测开放端口有利于快速收集目标资产,找到目标网站的其他功能站点。
常见的端口和攻击方法
社会工程学
①收集目标公司的人员邮箱,发钓鱼邮件 ②伪造致命网站,诱骗用户点击
WAF防护分析
Web应用防护系统(也称为:网站应用级入侵防御系统。英文:Web Application Firewall,简称: WAF)。利用国际上公认的一种说法:Web应用防火墙是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品。
如何快速识别WAF?
1、采用工具wafwoof
获取地址:https://codeload.github.com/EnableSecurity/wafw00f/zip/refs/heads/master
安装之前一定要有python的环境不然安装不上
# unzip wafw00f-master.zip
# python3.8 setup.py install
# ls -ld wafw00f
drwxr-xr-x 6 root root 4096 6月 10 17:22 wafw00f
# cd wafw00f
#python main.py https://www.hlszsb.com/
[*] Checking https://www.hlszsb.com/
[+] Generic Detection results:
[-] No WAF detected by the generic detection
[~] Number of requests: 7
wafw00f的缺点判断的不是特别的准确存在误报或识别不出的情况。
2、在有些网站的请求信息当中有的网站没有做安全信息上面留下了waf的相关信息
3、使用nmap指纹检测
nmap --script==http-waf-fingerprint
nmap --script=http-waf-detec
识别WAF对于安全测试的意义?
对于一个网站要是使用了waf而渗透人员没有识别直接使用工具进行扫描有可能会导致waf将你的ip地址拉入黑名单而不能访问。而识别waf在于有针对性行的绕过各个厂商的waf可能存在着不同的绕过思路。
加密编码算法
前言:在渗透测试中,常见的密码等敏感信息会采用加密处理,其中作为安全测试人员必须要了解常见的加密方式,才能为后续的安全测试做好准备,学习各种加密编码等知识,便于后期的学习和发展。
常见加密和编码方式
加密方式特点:密文和明文之间不可逆,通常使用穷举方法进行破解。
编码方式特点:密文和明文之间可逆,可以通过明文获取到密文,也可以通过密文得到明文。
1.base64编码
特点:结尾通常以一个"="或两个’=='结尾,明文越长,密文越长,通常是0-9,a-z,A-Z组成
2.url编码
**特点:**编码开头都是通过百分号开头,所以也叫百分号编码
3.unicode编码
特点:以\u,\u+,&#x和&#开头
4.16进制
特点:通常以\x开头
5.unix时间戳
特点:通常全部为10位数字组成,时间戳通常是用在用户的注册、登录、注销等情况
6.ASCIl编码
ASCIl(American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO/IEC 6 46。
7.md5加密
特点:密文存在16位和32位,通常是0-9和a-z进行排列组合
8.AES加密
是一种安全的加密方式,涉及到密码,偏移量,数据块,填充,在加密时候涉及到4种随机性。解密难度大。用base64解密出来是乱码,有很大可能是AES加密。有时候/出现在字符串里面。比较注重安全和大型网站、安全比赛
主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO/IEC 6 46。