记一次low站后台小通杀
这算是一个小通杀吧,虽然都比较拉胯没啥用处,但是也是一波经验。
感谢邪半仙师傅提供的思路
右键打开页面源代码,可以看到赤裸裸的代码:
根据json返回的code来决定是否跳转,那么可以尝试一下直接复制这个链接到url后面看一下是否有未授权访问,这里就不展示了,直接上主题
这里肯定是不知道用户名和密码的,可以尝试一下弱口令、爆破
随便输入用户名和密码,然后开启burp抓包,点击提交。
抓取登录的数据包返回包,修改code
点击forward放包过去,然后会返回以下这个数据包
把之前看见的页面源代码里面的地址: admin/NumberList.html
粘贴进去
替换之后的效果如下:
成功进入后台.
实际上,这样的一个系统有一些这样修改登录的返回包code之后会跳转到main页面,这时候修改url是没有用的,直接将他放过去,然后重新抓包修改返回包、替换地址即可。回车一下,然后再重复进行以上的操作即可进入。
php命令执行
一、命令执行相关知识
0x01. 什么是命令执行
: 让php文件去执行cmd命令.
在命令行中使用echo “” > 1.php:
写一句话木马到1.php文件.(路径在命令行本级目录)
代码执行和命令执行的区别:
代码执行:用户输入的数据被当做后端代码执行
命令执行:用户输入的数据被当做系统命令执行(菜刀的终端实际上也是用的命令执行调用的cmd窗口)
0x02. php哪些函数可以做到命令执行:
1.system(‘whoami’):
php操纵计算机执行whoami命令,并且输出结果,可以看到多行
2.echo exec(‘whoami’):
php操纵计算机执行命令之后获取最后一行结果,需要配合echo使用
3.echo shell_exec(‘whoami’):
php操纵计算机执行命令之后,获取所有结果,但是不会自动输出,需要配合echo使用
4.passthru:
只调用命令,把命令的运行结果原样的输出到标准输出设备,和system差不多
5.``:
反引号其实就是调用shell_exec()函数
6.popen
(要执行的命令,参数)r是只读,w ...
SSRF简单复现
SSRF(服务器端请求伪造)
0x01. 相似原理:
翻译: 提供需要翻译的文字 -> 翻译软件 -> 返回翻译后的数据
A 控制 B 去访问 C
网页翻译原理:
方案A:
1.请求目标站点
2.获取浏览器上面的目标站点数据
3.翻译软件把数据返回
方案B:
1.提供目标网址给翻译网站
2.翻译网站代访问,得到目标网站数据
3.翻译网站返回翻译后的数据
SSRF:指攻击者能够从易受攻击的Web应用程序发送设计的请求对其他网站进行攻击(利用一个可发起网络请求的服务当做跳板来攻击其他目标)
0x02. SSRF的核心是攻击内网
通过SSRF可以做到如下:
扫描内部网络
向内部任意主机和任意端口发送数据包
DOS
暴力穷举:网络请求
有些时候厂商为什么会用已知漏洞组件
使用的时候没有漏洞
爆发漏洞管理员没关注
漏洞修复有风险
内网不会被黑客访问到。
防御SSRF方法:
1.正则匹配法
内网ip:http://内网IP地址 禁止url写内网ip ...
php-unserialize反序列化漏洞
unserialize反序列化漏洞相关知识
在了解反序列化漏洞之前,先了解一下php中的序列化。
php中的序列化和反序列化都是通过函数来实现的:
序列化用到serialize
反序列化则是unserialize
序列化(serialize):序列化是将对象的状态信息转换为可保存或传输的字符串的过程
反序列化(unserialize):反序列划就是将字符串转换为对象原本的状态信息。
0x01. 序列化:
以上代码,就是进行序列化的处理
其中:
O是指类型object
4是指类名的长度
tset是类名
1是指其中的属性数量
花括号里面是整个属性内容,s是指string类型(字符串)
5是指属性名的长度为5
s是属性值类型
4是属性值的长度
最后xxba是属性值内容
0x02. 反序列化
以上代码,就是进行反序列化的处理。
从序列化后的结果中恢复对象的状态信息
test类中有一个变量index内容是xxba
0x03. 反序列化漏洞
本质上serialize()和unserialize()在PHP内部实现上是没有漏洞的,漏洞的主要产生是由于应用程序在处理对象、魔术函数以及序列 ...
转载-如何寻找网站后台
一、当前页面信息浏览
1.1 查看图片的相关属性
当进入网站后,我们可以先随意点击下几张图片的属性,看看它们的文件路径是否可以加以利用。因为有些旧网站会直接把编辑器放在后台目录后面,所有当我们查看图片属性的时候会将网站路径上传点暴露出来。
1.2 查看网站底部管理入口和版权信息
其次,我们可以查看网站页面底部和网站版权信息,看看会不会有网站后台入口和版权网站信息。如果有网站后台入口,我们可以直接登登陆进去。而版权网站信息则我们可以让我们上网浏览它的建站规则。而这些底部网站后台入口往往在学校和政府网站比较多。
1.3 robots文件
robots.txt是一种存放于网站根目录下的ASCII编码的文本文件,它通常告诉网络搜索引擎的漫游器(又称网络蜘蛛),此网站中的哪些内容是不能被搜索引擎获取的,哪些是可以被获取的。我们可以在网站根目录下加上**/robots.txt**,说不定管理员不想被搜索引擎找到,把网站后台地址放置在里面。
1.4故意请求不存在的页面
当我们尝试不能直接浏览网页找到后台时,我们可以尝试下故意请求不存在的页面,让网页故意显示报错信息,查看网站真实路径,说 ...
文件上传
文件上传
上传文件的流程:
网页上传 -> 目标服务器的缓存目录 -> 移动到代码规定的目录 -> 重命名(开发)
移动上传文件函数: move_uploaded_file()
1.前端验证绕过:
可以通过burp抓包,删除js验证代码,即可绕过。
2.content-type方式绕过:
通过burp抓包,修改content-type类型为img/jpeg格式
3.黑名单绕过:
具体看黑名单内容,可以用大小写绕过、双写绕过、文件后缀点绕过
如何判断白名单和黑名单:
.aaaaaaaaa 如果可以上传就是黑名单,如果不可以上传就是白名单。
.htaccess绕过
上传一个img(实际是php)再上传含有将img文件当做php文件处理的代码的.htaccess文件,即可将img解析为php
5.后缀大小写绕过:
将php改为phP、PhP、pHP、PHp等都可以绕过
6.文件后缀空:
通过burp抓包,在文件名后缀加上一个空格,因windows会自动消除空格,但在后台检测有空格和没空格完全不一样,所以达成绕过
7.文件后缀点绕过:
与文件后缀空同理,用burp抓包,在 ...
常规信息收集
0x01. whois
在线whois查询域名注册时留下的信息,如:管理员姓名、邮箱等。
在线whois地址:https://whois.chinaz.com/
0x02. 子域名收集
1.layer子域名挖掘机
采用暴力枚举,占用资源较高,性能不好的电脑慎用,效果不错。
2.SubDomainBrute
高并发的DNS暴力枚举工具。支持Python3.5+和Python2.7,使用Python3.5+ 效率更高。可降低线程、导出文件,默认格式 域名.txt
项目地址:https://github.com/lijiejie/subDomainsBrute
3.sublist3r
使用许多搜索引擎(例如 Google、Yahoo、Bing、Baidu 和 Ask)枚举子域且采集的时候调用各大子域名收集网站的api接口。
项目地址:https://github.com/aboul3la/Sublist3r
4.搜索引擎及网络空间测绘
使用谷歌语法来进行子域名收集:
site:baidu.com -www (查找去掉www开头的根域名中带有baidu.com的域名)
使用fofa进 ...
寻找目标站点的ip
0x01. 查询目标ip地址
可以使用ping来确认目标的ip地址,以及是否启动了cdn(网络分发中心,提高不同地区用户的加载速度),如果启用了cdn那么ping得到的结果就不是唯一的ip,即启用了cdn。
例如baidu主站,就使用了cdn
如下图:
如果ping得到的结果是唯一的ip,可以尝试用ip访问看是否是目标站点。[部分网站服务器做了虚拟主机技术通过ip直接访问也会访问不到]
在线全球ping网址:
https://www.wepcc.com/
https://ping.chinaz.com/
0x02. 如何绕过cdn寻找目标站点真实ip
1. 通过域名历史解析记录
在线查询网址:
http://www.jsons.cn/nslookup/
https://viewdns.info/
https://x.threatbook.cn/
2. 通过子域名查询
一般来说cdn只有核心业务才会启用,通常情况下子域名相对来说启用cdn的很少,有可能子站和主站在同一台服务器或是同一个C段内。
手动查询子域名:使用fofa语法: domain="baidu.com&quo ...