2020-网鼎杯-phpweb看到题目只有一个背景图还有规范的时间格式
其次注意到每隔一段时间,时间就会刷新,抓包看看
于是想到了这里有可能存在调用函数的破绽,尝试了几个常用的system(),shell_exec(),passthru()都被拦截了之后,试了试file_get_contents()发现可以,于是把index.php源码down下来了
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061<!...
前言:垃圾就要多学习
第五空间智能安全大赛-hate-php源码:1234567891011121314151617<?phperror_reporting(0);if(!isset($_GET['code'])){ highlight_file(__FILE__);}else{ $code = $_GET['code']; if (preg_match('/(f|l|a|g|\.|p|h|\/|;|\"|\'|\`|\||\[|\]|\_|=)/i',$...
0x1 WAF的常见特征之所以要谈到WAF的常见特征,是为了更好的了解WAF的运行机制,这样就能增加几分绕过的机会了。本文不对WAF做详细介绍,只谈及几点相关的。
总体来说,WAF(Web Application Firewall)的具有以下四个方面的功能:
审计设备:用来截获所有HTTP数据或者仅仅满足某些规则的会话
访问控制设备:用来控制对Web应用的访问,既包括主动安全模式也包括被动安全模式
架构/网络设计工具:当运行在反向代理模式,他们被用来分配职能,集中控制,虚拟基础结构等。
WEB应用加固工具:这些功能增强被保护Web应用的安全性,它不仅能够屏蔽WEB应用固有弱点,而...
网站工具:https://jwt.io/
JWT(JSON Web Token)目前最流行的跨域身份验证解决方案
分为三部分:头部、载荷、签名
头部包含签名的算法原始数据:
1{ "alg": "HS256", "typ": "JWT"}
*alg表示用了HS256算法,typ表示这是JWT**base64加密后
1eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9
载荷用于服务器识别数据来自哪里比如:原始数据
1{ "sub"...
命令执行例子
12345<?php$target=$_REQUEST['ip'];$cmd = shell_exec('ping '.$target);echo "<pre>{$cmd}</pre>";?>
传入?ip=|whoami就可以执行命令
PHP危险函数
phpinfo()功能描述:输出 PHP 环境信息以及相关的模块、WEB 环境等信息。危险等级:中
passthru()功能描述:允许执行一个外部程序并回显输出,类似于 exec()。危险等级:高
exe...
预备知识Brutesuite的Fuzz扫描
dvcs-ripper工具123./rip-svn.pl -v -u http://www.example.com/.svn./rip-hg.pl -v -u http://www.example.com/.hg./rip-git.pl -v -u http://www.example.com/.git
之后就可以从下载下来的隐藏目录中找到flag了
log泄露
查看历史记录
1git log
切换版本
1git reset
对比两次提交
1git diff
解题思路
Brutesuite用Fuzz扫描发现存在git源码泄露
用GitHack工具clone源码到本地
git log 查看版本
解法一对比前一个版本
12git diff f95aegit diff HEAD^
解法二直接恢复到前一个版本
12git reset --hard f95aegit reset --hard HEAD^
FLAG最后得到flag
stash工作状态泄露
查看git保存的工作状态
1git stash list
恢...
前言:vim不正常退出会导致残留隐藏文件,会造成源码泄露
vim交换文件名在使用vim时会创建临时缓存文件,关闭vim时缓存文件则会被删除,当vim异常退出后,因为未处理缓存文件,导致可以通过缓存文件恢复原始文件内容以 index.php 为例:第一次产生的交换文件名为 .index.php.swp再次意外退出后,将会产生名为 .index.php.swo 的交换文件第三次产生的交换文件则为 .index.php.swn
利用思路
思路一利用curl访问即可直接看到flag,因为vim使用的缓存存储为一种固定格式的二进制文件。而我们一般编辑的时明问可见字符,在vim的缓存中这些可见字符会...
源码123456789<?phprequire("config.php");$table = $_GET['table']?$_GET['table']:"test";$table = Filter($table);mysqli_query($mysqli,"desc `secret_{$table}`") or Hacker();$sql = "select 'flag{xxx}' from secret_...
libxml2.9.0之后默认不解析外部实体,php版本不影响XXE的利用web目录为:
123456$ tree ..├── dom.php # 示例:使用DOMDocument解析body├── index.php├── SimpleXMLElement.php # 示例:使用SimpleXMLElement类解析body└── simplexml_load_string.php # 示例:使用simplexml_load_string函数解析body
php读取xml代码
12345678910111213<?phperror_reporting(0);libxml_dis...