CVE-2017-15715漏洞复现
漏洞信息0x01漏洞描述Apache HTTPD是一款HTTP服务器,它可以通过mod_PHP来运行PHP网页。其2.4.0~2.4.29版本中存在一个解析漏洞,此漏洞的出现是由于 apache 在修复第一个后缀名解析漏洞时,用正则来匹配后缀。在解析 php 时 xxx.php\x0A 将被按照 php 后缀进行解析,导致绕过一些服务器的安全策略。 0x02影响版本Apache HTTPD 2.4.0~2.4.29 0x03漏洞分析index.php源码 12345678910111213141516171819202122232425262728293031323334<?phpif(isset($_FILES['file'])) { $name = basename($_POST['name']); $ext = pathinfo($name,PATHINFO_EXTENSION); if(in_array($ext, ['php', 'php3',...
极客大挑战2020wp--web(已做完)
web-Welcome#请求方法+sha1哈希绕过 打开是405错误,抓包后看到是Method Not Allowed 搜索后发现是请求方式错误,换成POST传参就可以拿到源码了 1234567891011121314<?phperror_reporting(0);if ($_SERVER['REQUEST_METHOD'] !== 'POST') {header("HTTP/1.1 405 Method Not Allowed");exit();} else { if (!isset($_POST['roam1']) || !isset($_POST['roam2'])){ show_source(__FILE__); } else if ($_POST['roam1'] !== $_POST['roam2'] &&...
CVE-2019-11043漏洞复现
漏洞信息漏洞描述Nginx 上 fastcgi_split_path_info 在处理带有 %0a 的请求时,会因为遇到换行符 \n 导致 PATH_INFO 为空。而 php-fpm 在处理 PATH_INFO为空的情况下,存在逻辑缺陷。攻击者通过精心的构造和利用,可以导致远程代码执行。 利用条件:nginx配置了fastcgi_split_path_info 受影响系统:PHP 5.6-7.x,Nginx>=0.7.31 那我们先来看一下nginx.conf中的具体配置 12345678910111213location ~ [^/]\.php(/|$) { ... fastcgi_split_path_info ^(.+?\.php)(/.*)$; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_pass php:9000; ...} 解释一下 1fastcgi_split_path_info ^(.+?\.php)(/.*)$; 这一行将请求 URI...
记一次weblogic-10.3.6.0靶场漏洞利用
0x01前言一开始工具跑不起来,后面才发现是原先的java版本太高了,整了个java8才跑起来 0x02复现准备工具:WeblogicTool 1.2 环境靶场:http://119.45.164.136:7001/ dirsearch扫不出目录,但是看着cve的话就直接访问管理控制台了 外网探测http://119.45.164.136:7001/console/login/LoginForm.jsp 利用工具进行扫描 CVE_2016_0638_ECHO漏洞,老漏洞了 删掉端口后面多余字符,输入/uddiexplorer/ 随便在右上角找了一个图片的路径 1http://119.45.164.136:7001/uddiexplorer/help.gif 复制图片文件名 到weblogic中用命令去查找 1find ./ -name...
ctfshow月饼杯(已做完)
web1_此夜圆一江春水何年尽,万古清光此夜圆 #反序列化字符串逃逸有附件,下下来看看 1234567891011121314151617181920212223242526272829303132333435<?phperror_reporting(0);class a{ public $uname; public $password; public function __construct($uname,$password) { $this->uname=$uname; $this->password=$password; } public function __wakeup() { if($this->password==='yu22x') { include('flag.php'); echo $flag; } else { echo 'wrong...
ctfshow萌新赛(已做完)
给她#sprintf()函数绕过sql 扫目录发现git文件泄露,用Githack扒下来有一个hint.php 1234<?php$pass=sprintf("and pass='%s'",addslashes($_GET['pass']));$sql=sprintf("select * from user where name='%s' $pass",addslashes($_GET['name']));?> 这里的话用addslashes函数对传入的参数进行了一定的字符转义,但是问题是这里对name和pass都使用了这个函数,我们应该怎么去绕过这个反斜杠转义呢? sprintf()函数就是我们的突破口,毕竟这里就sprintf()函数比较特殊了嘛 先分析一下这个函数的作用 sprintf()函数sprintf() 函数是 PHP 中用于格式化字符串的一个功能强大的工具。 基础语法 1sprintf(format, arg1, arg2,...
web入门命令执行篇-ctfshow
0x01基础知识专门写了一个关于RCE和文件包含的总结,所以这里的知识点就删减掉了 2.函数1.对于PHP,以下是一些可能存在RCE漏洞的函数: PHP的system()和exec()函数:这些函数用于执行外部命令,如果未对用户输入进行适当的过滤或验证,攻击者可能利用这些函数执行任意命令。 PHP的eval()函数:该函数用于执行字符串作为PHP代码,如果未对用户输入进行适当的过滤或验证,攻击者可以利用此函数执行任意代码。 PHP的create_function()函数:该函数用于动态创建函数,如果未对用户输入进行适当的过滤或验证,攻击者可以利用此函数执行任意代码。 2.对于ASP(Active Server...
内网代理的搭建学习
0x01废话之前在打春秋云镜的靶场的时候接触过一点内网穿透,当时也学着搭了一下隧道,不过还是得认真学习一下。 参考文章: 图文总结:正向代理与反向代理 内网代理搭建 加上参考了N1的内网渗透体系建设的书 0x02前置知识在渗透测试的过程中,通常我们打进外网getshell之后,就需要对内网进行渗透,此时除了需要对内网进行基础的信息收集之外,还需要通过端口转发或搭建代理等方式去完成与内网之间的通道搭建 ...
web入门文件上传篇--ctfshow
0x01前言之前只是做过ctfhub的文件上传的题目和一些赛题,并没有真正系统学习过文件上传,这次也是来到我期待已久的文件上传篇了 0x02步入正题文件上传漏洞一.介绍: 文件上传漏洞是指用户上传了一个可执行的脚本文件,并通过此脚本文件获得了执行服务器端命令的能力。“文件上传” 本身没有问题,有问题的是文件上传后,服务器怎么处理、解释文件。如果服务器的处理逻辑做的不够安全,则会导致严重的后果。 要点:用户上传可执行文件,服务器未对文件进行一个合理的检查过滤 二.文件上传漏洞危害 上传文件是web脚本语言,服务器的web容器解释并执行了用户上传的脚本,导致代码执行。 上传文件是Flash的策略文件 crossdomain.xml,黑客用以控制Flash在该域 下的行为(其他通过类似方式控制策略文件的情况类似); 上传文件是病毒、木马文件,黑客用以诱骗用户或者管理员下载执行; 上传文件是钓鱼图片或为包含了脚本的图片,在某些版本的浏览器中会被作为脚本执行,被用于钓鱼和欺诈。 除此之外,还有一些不常见的利用方法,比如将上传文件作为一个入口,溢...
文件上传的一些积累
...