-
2021-12-10 15:20:28
任意文件上传
大多数网站都有文件上传的接口,但如果在后台开发时并没有对上传的文件进行安全考虑或采用了有缺陷的措施,导致攻击者可以通过一些手段绕过安全措施从而上传一些恶意文件,从而通过该恶意文件的访问来控制整个后台
测试流程1、客户端检测绕过(javascript 检测)
首先观察到提示只允许上传图片文件,那么前端查看代码,当页面发生改变时,会调用这个checkFileExt函数来检查是不是图片,我们只需要将前端checkFileExt函数删除,就能上传一个个非图片文件。
2、服务端验证绕过(MIME类型检测)
MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型。是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式。
每个MIME类型由两部分组成,前面是数据的大类别,例如声音audio、图象image等,后面定义具体的种类。
常见的MIME类型(通用型):
超文本标记语言文本 .html text/html
xml文档 .xml text/xml
XHTML文档 .xhtml application/xhtml+xml
普通文本 .txt text/plain
RTF文本 .rtf application/rtf
PDF文档 .pdf application/pdf
Microsoft Word文件 .word application/msword
PNG图像 .png image/png
GIF图形 .gif image/gif
JPEG图形 .jpeg,.jpg image/jpeg
au声音文件 .au audio/basic
MIDI音乐文件 mid,.midi audio/midi,audio/x-midi
RealAudio音乐文件 .ra, .ram audio/x-pn-realaudio
MPEG文件 .mpg,.mpeg video/mpeg
AVI文件 .avi video/x-msvideo
GZIP文件 .gz application/x-gzip
TAR文件 .tar application/x-tar
任意的二进制数据 application/octet-stream
通过使用 PHP 的全局数组 $_FILES,你可以从客户计算机向远程服务器上传文件。
第一个参数是表单的 input name,第二个下标可以是 "name", "type", "size", "tmp_name" 或 "error"。就像这样:$_FILES["file"]["name"] - 被上传文件的名称
$_FILES["file"]["type"] - 被上传文件的类型
$_FILES["file"]["size"] - 被上传文件的大小,以字节计
$_FILES["file"]["tmp_name"] - 存储在服务器的文件的临时副本的名称
$_FILES["file"]["error"] - 由文件上传导致的错误代码详细可参考:http://www.w3school.com.cn/php/php_file_upload.asp
分析代码逻辑:首先会获取到前端的提交请求,然后定义了一个数组(定义图片上传指定类型),然后通过upload_sick函数对上传的文件进行一定的检查。
分析upload_sick函数存在漏洞的的原因是因为 $ _FILES() 这个全局的方法是通过浏览器http头去获取的content-type,content-type是前端用户可以控制的。容易被绕过。
上传一张正常的符合标准的图片,对其content-type进行抓包操作。可见正常上传符合要求的图片中数据包中content-type为image/png对比符合条件,而php文件则不符合条件返回文件类型错误。1)代码注入绕过--getimagesize()
getimagesize() 函数用于获取图像大小及相关信息,成功返回一个数组,失败则返回 FALSE 并产生一条 E_WARNING 级的错误信息,如果用这个涵数来获取类型,从而判断是否是图片的话,会存在问题。语法格式:
array getimagesize ( string $filename [, array &$imageinfo ] )
getimagesize() 函数将测定任何 GIF,JPG,PNG,SWF,SWC,PSD,TIFF,BMP,IFF,JP2,JPX,JB2,JPC,XBM 或 WBMP 图像文件的大小并返回图像的尺寸以及文件类型及图片高度与宽度。2)文件包含漏洞之文件上传漏洞利用
方法一:直接伪造头部GIF89A
方法二:CMD方法,copy /b test.png+1.php muma.png
方法三:直接使用工具增加备注写入一句话木马。
3)路径/扩展名绕过
1、白名单
0x00截断或test.asp%00.jpg
MIME绕过2、黑名单
(1)文件名大小写绕过
(2)名单绕过
用黑名单里没有的名单进行攻击,比如黑名单里没有.php|.php5|.php4|.php3|.php2|php1|.html|.htm|.phtml|.pHp|.pHp5|.pHp4|.pHp3|.pHp2|pHp1|.Html|.Htm|.pHtml|.jsp|.jspa|.jspx|.jsw|.jsv|.jspf|.jtml|.jSp|.jSpx|.jSpa|.jSw|.jSv|.jSpf|.jHtml|.asp|.aspx|.asa|.asax|.ascx|.ashx|.asmx|.cer|.aSp|.aSpx|.aSa|.aSax|.aScx|.aShx|.aSmx|.cEr|.sWf|.swf|.htaccess后缀文件之类
(3)特殊文件名或文件夹绕过(windows)
还有比如发送的http 包里把文件名改成test.asp. 或test.asp_(下划线为空格),这种命名方式在windows 系统里是不被允许的,所以需要在burp 之类里进行修改,然后绕过验证后,会被windows 系统自动去掉后面的点和空格,但要注意Unix/Linux 系统没有这个特性。
(4)0x00截断
name = getname(http request) //假如这时候获取到的文件名是test.asp .jpg(asp 后面为0x00)
type = gettype(name) //而在gettype()函数里处理方式是从后往前扫描扩展名,所以判断为jpg
if (type == jpg)
SaveFileToPath(UploadPath.name, name) //但在这里却是以0x00 作为文件名截断
//最后以test.asp 存入路径里
(6)双后缀名绕过
(7)::$DATA绕过
是Windows下NTFS文件系统的一个特性,即NTFS文件系统的存储数据流的一个属性 DATA 时,就是请求 a.asp 本身的数据,如果a.asp 还包含了其他的数据流,比如 a.asp:lake2.asp,请求 a.asp:lake2.asp::$DATA,则是请求a.asp中的流数据lake2.asp的流数据内容。
4)中间件解析漏洞绕过服务器解析漏洞算是历史比较悠久了,但如今依然广泛存在。在此记录汇总一些常见服务器(WEB server)的解析漏洞,比如IIS6.0、IIS7.5、apache、nginx等方便以后回顾温习。
IIS解析漏洞使用iis5.x-6.x版本的服务器,大多为windows server 2003,网站比较古老,开发语句一般为asp;该解析漏洞也只能解析asp文件,而不能解析aspx文件。
目录解析(6.0)
形式:www.xxx.com/xx.asp/xx.jpg
原理: 服务器默认会把.asp,.asa目录下的文件都解析成asp文件。文件解析
形式:www.xxx.com/xx.asp;.jpg
原理:服务器默认不解析;号后面的内容,因此xx.asp;.jpg便被解析成asp文件了。解析文件类型
IIS6.0 默认的可执行文件除了asp还包含这三种 :
/test.asa
/test.cer
/test.cdx修复方案
1.目前尚无微软官方的补丁,可以通过自己编写正则,阻止上传xx.asp;.jpg类型的文件名。
2.做好权限设置,限制用户创建文件夹。Apache解析漏洞
Apache 解析文件的规则是从右到左开始判断解析,如果后缀名为不可识别文件解析,就再往左判断。比如 test.php.owf.rar “.owf”和”.rar” 这两种后缀是apache不可识别解析,apache就会把oldboy.php.owf.rar解析成php。
漏洞形式
www.xxxx.xxx.com/test.php.php123
其余配置问题导致漏洞
(1)如果在 Apache 的 conf 里有这样一行配置 AddHandler php5-script .php 这时只要文件名里包含.php 即使文件名是 test2.php.jpg 也会以 php 来执行。
(2)如果在 Apache 的 conf 里有这样一行配置 AddType application/x-httpd-php .jpg 即使扩展名是 jpg,一样能以 php 方式执行。(3).htaccess
配置文件LoadModule rewrite_module modules/mod_rewrite.so前的注释去掉,寻找关键词:AllowOverride,并把后面的参数从None全部改成All修复方案
1.apache配置文件,禁止.php.这样的文件执行,配置文件里面加入
<Files ~ “.(php.|php3.)”>
Order Allow,Deny
Deny from all
</Files>
2.用伪静态能解决这个问题,重写类似.php.*这类文件,打开apache的httpd.conf找到LoadModule rewrite_module modules/mod_rewrite.so
把#号去掉,重启apache,在网站根目录下建立.htaccess文件,代码如下:<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .(php.|php3.) /index.php
RewriteRule .(pHp.|pHp3.) /index.php
RewriteRule .(phP.|phP3.) /index.php
RewriteRule .(Php.|Php3.) /index.php
RewriteRule .(PHp.|PHp3.) /index.php
RewriteRule .(PhP.|PhP3.) /index.php
RewriteRule .(pHP.|pHP3.) /index.php
RewriteRule .(PHP.|PHP3.) /index.php
</IfModule>
nginx解析漏洞
漏洞原理
Nginx默认是以CGI的方式支持PHP解析的,普遍的做法是在Nginx配置文件中通过正则匹配设置SCRIPT_FILENAME。当访问www.xx.com/phpinfo.jpg/1.php这个URL时,$fastcgi_script_name会被设置为“phpinfo.jpg/1.php”,然后构造成SCRIPT_FILENAME传递给PHP CGI,但是PHP为什么会接受这样的参数,并将phpinfo.jpg作为PHP文件解析呢?这就要说到fix_pathinfo这个选项了。 如果开启了这个选项,那么就会触发在PHP中的如下逻辑:
PHP会认为SCRIPT_FILENAME是phpinfo.jpg,而1.php是PATH_INFO,所以就会将phpinfo.jpg作为PHP文件来解析了
漏洞形式
www.xxxx.com/UploadFiles/image/1.jpg/1.php
www.xxxx.com/UploadFiles/image/1.jpg%00.php
www.xxxx.com/UploadFiles/image/1.jpg/%20\0.phpxxx.jpg%00.php (Nginx <8.03 空字节代码执行漏洞)
另外一种手法:上传一个名字为test.jpg,以下内容的文件。
<?PHP fputs(fopen('shell.php','w'),'<?php eval($_POST[cmd])?>');?>
然后访问test.jpg/.php,在这个目录下就会生成一句话木马shell.php。
修复方案
1.修改php.ini文件,将cgi.fix_pathinfo的值设置为0;
2.在Nginx配置文件中添加以下代码:if ( $fastcgi_script_name ~ ..*/.*php ) {
return 403;
}
这行代码的意思是当匹配到类似test.jpg/a.php的URL时,将返回403错误代码。
IIS7.5解析漏洞
IIS7.5的漏洞与nginx的类似,都是由于php配置文件中,开启了cgi.fix_pathinfo,而这并不是nginx或者iis7.5本身的漏洞。
win7 win2008 IIS7快速安装PHP及phpStudy注意事项 - phpStudy
当安装完成后, php.ini里默认cgi.fix_pathinfo=1,对其进行访问的时候,在URL路径后添加.php后缀名会当做php文件进行解析,漏洞由此产生
注:在进行实际的测试的时候,发现漏洞并没有产生,后来发现要设置FastCGI为关闭,该项好像是用来处理数据文件
安全防范
针对文件上传漏洞的特点和必须具备的三个条件,我们阻断任何一个条件就可以达到组织文件上传攻击的目的:
1、最有效的,将文件上传目录直接设置为不可执行,对于Linux而言,撤销其目录的'x'权限;实际中很多大型网站的上传应用都会放置在独立的存储上作为静态文件处理,一是方便使用缓存加速降低能耗,二是杜绝了脚本执行的可能性;
2、文件类型检查:强烈推荐白名单方式,结合MIME Type、后缀检查等方式(即只允许允许的文件类型进行上传);此外对于图片的处理可以使用压缩函数或resize函数,处理图片的同时破坏其包含的HTML代码;
3、使用随机数改写文件名和文件路径,使得用户不能轻易访问自己上传的文件;
4、单独设置文件服务器的域名;任意文件下载
一、漏洞介绍
一些网站由于业务需求,往往需要提供文件查看或文件下载功能,但若对用户查看或下载的文件不做限制,则恶意用户就能够查看或下载任意敏感文件,这就是文件查看与下载漏洞。
二、利用方式
一般链接形式:
download.php?path=
down.php?file=
data.php?file=或者包含参数:
&Src=
&Inputfile=
&Filepath=
&Path=
&Data=当遇到一个任意文件下载时,我们的一般利用思路:
(1)下载常规的配置文件,例如: ssh,weblogic,ftp,mysql等相关配置
(2)下载各种.log文件,从中寻找一些后台地址,文件上传点之类的地方,如果运气好的话会获得一些前辈们的后门。
(3)下载web业务文件进行白盒审计,利用漏洞进一步攻入服务器。
尝试读取/root/.bash_history看自己是否具有root权限。如果没有的话。我们只能按部就班的利用../来回跳转读取一些.ssh下的配置信息文件,读取mysql下的.bash_history文件。来查看是否记录了一些可以利用的相关信息。然后逐个下载我们需要审计的代码文件,但是下载的时候变得很繁琐,我们只能尝试去猜解目录,然后下载一些中间件的记录日志进行分析。如果我们遇到的是java+oracle环境
可以先下载/WEB-INF/classes/applicationContext.xml 文件,这里面记载的是web服务器的相应配置,然后下载/WEB-INF/classes/xxx/xxx/ccc.class对文件进行反编译,然后搜索文件中的upload关键字看是否存在一些api接口,如果存在的话我们可以本地构造上传页面用api接口将我们的文件传输进服务器
如果具有root权限
在linux中有这样一个命令 locate 是用来查找文件或目录的,它不搜索具体目录,而是搜索一个数据库/var/lib/mlocate/mlocate.db。这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次。当我们不知道路径是什么的情况下,这个可以说是一个核武器了,我们利用任意文件下载漏洞mlocate.db文件下载下来,利用locate命令将数据输出成文件,这里面包含了全部的文件路径信息。
locate 读取方法: locate mlocate.db admin //可以将mlocate.db中包含admin文件名的内容全部输出来
(4)常见利用文件
/root/.ssh/authorized_keys
/root/.ssh/id_rsa
/root/.ssh/id_ras.keystore
/root/.ssh/known_hosts //记录每个访问计算机用户的公钥
/etc/passwd
/etc/shadow
/etc/my.cnf //mysql配置文件
/etc/httpd/conf/httpd.conf //apache配置文件
/root/.bash_history //用户历史命令记录文件
/root/.mysql_history //mysql历史命令记录文件
/proc/mounts //记录系统挂载设备
/porc/config.gz //内核配置文件
/var/lib/mlocate/mlocate.db //全文件路径
/porc/self/cmdline //当前进程的cmdline参数
三、漏洞修复
(1)过滤".",使用户在url中不能回溯上级目录(2)正则严格判断用户输入参数的格式
(3)php.ini配置open_basedir限定文件访问范围
更多相关内容 -
任意文件下载漏洞
2021-12-16 16:55:38任意文件下载任意文件下载
根据file关键字的值来作为要下载的文件名并判断文件是否存在。存在即会下载。
exp.php与download.php在同一级目录下
因此可以通过修改参数名来下载服务器上的任意文件。
此参数为绝对路径。文件下载漏洞的利用除了给绝对路径外,也可以给相对路径。例如:
../可实现目录穿越,来获得该目录上一级的内容
漏洞利用:
1. 获得站点源码:
即可获取download.php的源代码了。
获得源代码便从黑盒变成一个白盒,便可以去做代码审计。
2. 获得站点与中间件配置文件:
配置文件包括ip地址,用户名和密码,端口等
漏洞挖掘:
发现可以链接和参数之后,便可以进行
漏洞验证
:注:window在使用相对路径访问并下载文件时,无法跨盘完成该操作。但可以通过读源码来判断其是否存在漏洞。
当发现在一个站点中发现其具有读取文件的功能时,
…/可以多给,其返回到根目录后便不会再有上一级。
防御
文件有对应的id值,id值有对应的文件路径。
添加文件下载的默认前缀,即默认的路径,并过滤…/ -
OWASP-TOP10之任意文件下载漏洞:高危漏洞
2021-06-30 16:18:19一些网站由于业务需求,往往需要提供文件查看或文件下载功能,但若对用户查看或下载的文件不做限制,则恶意用户就能够查看或下载任意敏感文件,这就是文件查看与下载漏洞。 出现的原因是:没有指定文件或者路径 ...1.中间件勾了目录浏览就会存在任意文件下载的风险。
出现下图就可以随意下载文件了:
2.什么是任意文件下载:
一些网站由于业务需求,往往需要提供文件查看或文件下载功能,但若对用户查看或下载的文件不做限制,则恶意用户就能够查看或下载任意敏感文件,这就是文件查看与下载漏洞。
出现的原因是:没有指定文件或者路径
../后面要加上要下载的文件名,就可以实现文件任意下载。
对于linux系统不管几级目录,只需要../../../../../etc/passwd
3.如何查找这样的漏洞:看到类似下面的链接形式可以退通过../../查看是否能够下载其他文件
一般链接形式:
download.php?path=
down.php?file=
data.php?file=
download.php?filename=或者包含参数:
&Src=
&Inputfile=
&Filepath=
&Path=
&Data=当遇到一个任意文件下载时,我们可以下载下面的文件:
(1)下载常规的配置文件,例如: ssh,weblogic,ftp,mysql等相关配置
(2)下载各种.log文件,从中寻找一些后台地址,文件上传点之类的地方,如果运气好的话会获得一些前辈们的后门。(有可能存在敏感信息,前提是运维人员在安装时路径未做改变)
(3)下载web业务文件进行白盒审计,利用漏洞进一步攻入服务器。
尝试读取/root/.bash_history看自己是否具有root权限。如果没有的话。我们只能按部就班的利用../来回跳转读取一些.ssh下的配置信息文件,读取mysql下的.bash_history文件。来查看是否记录了一些可以利用的相关信息。然后逐个下载我们需要审计的代码文件,但是下载的时候变得很繁琐,我们只能尝试去猜解目录,然后下载一些中间件的记录日志进行分析。如果我们遇到的是java+oracle环境
可以先下载/WEB-INF/classes/applicationContext.xml 文件,这里面记载的是web服务器的相应配置,然后下载/WEB-INF/classes/xxx/xxx/ccc.class对文件进行反编译,然后搜索文件中的upload关键字看是否存在一些api接口,如果存在的话我们可以本地构造上传页面用api接口将我们的文件传输进服务器
如果具有root权限
在linux中有这样一个命令 locate 是用来查找文件或目录的,它不搜索具体目录,而是搜索一个数据库/var/lib/mlocate/mlocate.db。这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次。当我们不知道路径是什么的情况下,这个可以说是一个核武器了,我们利用任意文件下载漏洞mlocate.db文件下载下来,利用locate命令将数据输出成文件,这里面包含了全部的文件路径信息。
locate 读取方法: locate mlocate.db admin //可以将mlocate.db中包含admin文件名的内容全部输出来
4、漏洞修复
(1)过滤".",使用户在url中不能回溯上级目录(2)正则严格判断用户输入参数的格式
(3)php.ini配置open_basedir限定文件访问范围
-
任意文件上传与下载漏洞
2022-03-24 10:23:30一些网站由于业务需求,往往需要提供文件查看或文件下载功能,但若对用户查看或下载的文件不做限制,则恶意用户就能够查看或下载任意敏感文件,这就是文件查看与下载漏洞。 任意文件下载漏洞 (还有的叫任意...漏洞介绍
一些网站由于业务需求,往往需要提供文件查看或文件下载功能,但若对用户查看或下载的文件不做限制,则恶意用户就能够查看或下载任意敏感文件,这就是文件查看与下载漏洞。任意文件下载漏洞
(还有的叫任意文件读取,返回上几级把其他网页打开了)
利用方式:
一般链接形式:
download.php?path=
down.php?file=
data.php?file=或者包含参数:
&Src=
&Inputfile=
&Filepath=
&Path=
&Data=当遇到一个任意文件下载时,我们的一般利用思路:(简单说了一下)
(1)下载常规的配置文件,例如: ssh,weblogic,ftp,mysql等相关配置
(2)下载各种.log文件,从中寻找一些后台地址,文件上传点之类的地方,如果运气好的话会获得一些前辈们的后门。
(3)下载web业务文件进行白盒审计,利用漏洞进一步攻入服务器。
尝试读取/root/.bash_history看自己是否具有root权限。如果没有的话。我们只能按部就班的利用…/来回跳转读取一些.ssh下的配置信息文件,读取mysql下的.bash_history文件。来查看是否记录了一些可以利用的相关信息。然后逐个下载我们需要审计的代码文件,但是下载的时候变得很繁琐,我们只能尝试去猜解目录,然后下载一些中间件的记录日志进行分析。如果我们遇到的是java+oracle环境
可以先下载/WEB-INF/classes/applicationContext.xml 文件,这里面记载的是web服务器的相应配置,然后下载/WEB-INF/classes/xxx/xxx/ccc.class对文件进行反编译,然后搜索文件中的upload关键字看是否存在一些api接口,如果存在的话我们可以本地构造上传页面用api接口将我们的文件传输进服务器
如果具有root权限
在linux中有这样一个命令 locate 是用来查找文件或目录的,它不搜索具体目录,而是搜索一个数据库/var/lib/mlocate/mlocate.db。这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次。当我们不知道路径是什么的情况下,这个可以说是一个核武器了,我们利用任意文件下载漏洞mlocate.db文件下载下来,利用locate命令将数据输出成文件,这里面包含了全部的文件路径信息。
locate 读取方法: locate mlocate.db admin //可以将mlocate.db中包含admin文件名的内容全部输出来
常见利用文件(简单说了一下)
/root/.ssh/authorized_keys
/root/.ssh/id_rsa
/root/.ssh/id_ras.keystore
/root/.ssh/known_hosts //记录每个访问计算机用户的公钥
/etc/passwd
/etc/shadow
/etc/my.cnf //mysql配置文件
/etc/httpd/conf/httpd.conf //apache配置文件
/root/.bash_history //用户历史命令记录文件
/root/.mysql_history //mysql历史命令记录文件
/proc/mounts //记录系统挂载设备
/porc/config.gz //内核配置文件
/var/lib/mlocate/mlocate.db //全文件路径
/porc/self/cmdline //当前进程的cmdline参数漏洞修复
(1)过滤".",使用户在url中不能回溯上级目录(2)正则严格判断用户输入参数的格式
(3)php.ini配置open_basedir限定文件访问范围
任意文件上传漏洞
概述
大多数网站都有文件上传的接口,但如果在后台开发时并没有对上传的文件进行安全考虑或采用了有缺陷的措施,导致攻击者可以通过一些手段绕过安全措施从而上传一些恶意文件,从而通过该恶意文件的访问来控制整个后台客户端绕过
服务端验证绕过(MIME 类型检测)
MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型。是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式。
每个MIME类型由两部分组成,前面是数据的大类别,例如声音audio、图象image等,后面定义具体的种类。常见的MIME类型(通用型):
超文本标记语言文本 .html text/html
xml文档 .xml text/xml
XHTML文档 .xhtml application/xhtml+xml
普通文本 .txt text/plain
RTF文本 .rtf application/rtf
PDF文档 .pdf application/pdf
Microsoft Word文件 .word application/msword
PNG图像 .png image/png
GIF图形 .gif image/gif
JPEG图形 .jpeg,.jpg image/jpeg
au声音文件 .au audio/basic
MIDI音乐文件 mid,.midi audio/midi,audio/x-midi
RealAudio音乐文件 .ra, .ram audio/x-pn-realaudio
MPEG文件 .mpg,.mpeg video/mpeg
AVI文件 .avi video/x-msvideo
GZIP文件 .gz application/x-gzip
TAR文件 .tar application/x-tar
任意的二进制数据 application/octet-stream
ctf考题文件上传实验
01实验
02实验
mime,前面讲过03实验
04实验
05实验
06实验
07实验
08实验
09实验
10实验
11实验
白名单绕过
还有一个要求就是修改路径必须是管理员权限12实验
13实验
下面教一下怎么用文件包含漏洞解析图片后缀木马
16实验
解决方式是多上传几张图片,图片里的一句话木马在不同位置,有部分就不会被二次渲染掉了
17实验
时间竞争绕过
18实验
19实验
20实验
总结
-
任意文件读取与下载漏洞
2019-10-17 23:35:08为什么产生任意文件读取与下载漏洞 一些网站的业务需要,可能提供文件查看或下载的功能,如果对用户查看或下载的文件不做限制,就能够查看或下载任意的文件,可以是源文件,敏感文件等等。 任意文件读取漏洞 任意... -
文件上传和下载漏洞
2021-03-26 15:25:17一、文件下载漏洞1.需要寻找文件下载的路径进行构造一般链接形式:download.php?path=down.php?file=data.php?file=download.php?filename=一般参数形式:&Src=&Inputfile=&Filepath=&Path=&... -
关于任意文件下载及上传漏洞
2021-01-16 19:05:15文章目录任意文件读取下载1、原理2、利用方式3、漏洞修复4、实例任意文件上传1、原理2、分类3、基本思路4、基本绕过方式1、客户端检测绕过(javascript 检测)2、服务端验证绕过(MIME 类型检测)3、代码注入绕过--... -
浅谈 XXE 漏洞任意文件读取
2021-05-02 17:07:20浅谈 XXE 漏洞任意文件读取 文章目录浅谈 XXE 漏洞任意文件读取0x00 前言0x01 XML 基础知识1.什么是XML2.XML 语法2.1 语法规则2.2 XML 结构2.3 XML DTD(文档类型定义)3.XML 注入时的两大要素0x02 XXE 漏洞攻击1.... -
1-1 【理论】01-文件上传/下载漏洞的业务场
2022-02-27 18:27:38今天,我们这篇文章来讲文件上传/下载漏洞的原理以及危害,这篇文章从四个方面来讲, 1 文件上传漏洞产生的原因 2 文件上传合法性的检测方法 3文件上传漏洞20种绕过姿势 4 文件下载漏洞 文件上传漏洞介绍 文件... -
任意文件下载漏洞学习
2019-07-12 15:10:00任意文件下载漏洞,正常的利用手段是下载服务器文件,如脚本代码,服务器配置或者是系统配置等等。但是有的时候我们可能根本不知道网站所处的环境,以及网站的路径,这时候我们只能利用./ ../来逐层猜测路径,让漏洞... -
注入漏洞检测关键字
2013-03-01 22:38:10个人从网上和一些教程钟归纳了一些批量搜索注入点的关键字,分享给大家使用, 内容不多,但实用性还是蛮强的,保证能找到注入点,但是有些MD5加密之后不能解开,那也没有办法。有些关键字还可以扩展,寻找注入点... -
Grafana 任意文件读取漏洞复现
2022-03-16 12:11:47Grafana存在任意文件读取漏洞,通过默认存在的插件,可构造特殊的请求包读取服务器任意文件 二、漏洞影响 Grafana 8.x 三、漏洞复现 可以从登陆页面看到版本信息为 v8.2.4,此版本在漏洞射程范围之内 查看当前... -
代码审计技巧:漏洞及关键词
2021-01-12 15:19:48漏洞名称:密码硬编码、密码明文存储 ...漏洞名称:任意文件下载 关键词查找:download 、fileName 、filePath、write、getFile、getWriter 漏洞名称: 任意文件删除 关键词查找:Delete、deleteF. -
文件下载漏洞
2022-02-18 15:50:58一些网站由于业务需求,可能提供文件查看或下载的功能,如果对用户查看或下载的文件不做限制,则恶意用户就能够查看或下载任意的文件,可以是源代码文件、敏感文件等。如:... -
任意命令执行漏洞分析和防御
2021-04-30 00:03:53目录简介函数命令执行函数代码执行函数储备知识转义字符:多条命令执行注释符小技巧绕过空格过滤黑名单关键字执行无回显无字母数字构造命令 简介 1、命令执行(Command Execution)漏洞即黑客可以直接在Web应用中... -
泛微 e-office v9.0任意文件上传漏洞{CNVD-2021-49104}
2021-12-07 22:40:55泛微e-office 未能正确处理上传模块中用户输入导致的,攻击者可以构造恶意的上传数据包,实现任意代码执行,攻击者可利用该漏洞获取服务器控制权。 影响版本 泛微e-office V9.0 关键字 app="泛微e-office... -
命令执行漏洞-命令执行-漏洞位点- 代码注入-漏洞利用-联合执行-Bypass(空格,关键字过滤,变量绕过)-例题...
2022-02-14 09:53:17命令执行是一种攻击,其目标是通过易受攻击的应用程序在主机操作系统上执行任意命令。当应用需要调用一些外部程序去处理内容的情况下,就会用到一些执行系统命令的函数。 比如PHP中的system,exec,shell_exec等,当... -
Discuz!X ≤3.4 任意文件删除漏洞(wooyun-2014-065513)
2020-12-06 21:58:01修复了一个安全问题2用于加强安全性,这个漏洞会导致前台用户可以导致任意删除文件漏洞。 2017年9月29日,知道创宇404 实验室开始应急,经过知道创宇404实验室分析确认,该漏洞于2014年6月被提交到Wooyun漏洞平台,... -
渗透测试之文件下载漏洞
2020-09-08 15:32:211.一些网站由于业务需求,往往需要提供文件查看或文件下载功能,但若对用户查看或下载的文件不做限制,则恶意用户就能够查看或下载任意敏感文件,这就是文件查看与下载漏洞。 2.利用方式: 一般链接形式: download.... -
任意文件下载
2022-01-10 13:08:10一些网站由于业务需求,往往需要提供文件查看或文件下载功能,但若对用户查看或下载的文件不做限制,则恶意用户就能够查看或下载任意敏感文件,这就是文件查看与下载漏洞。 危害: 可以下载服务器的任意文件,web... -
Thinkphp框架任意代码执行漏洞利用及修复
2021-04-20 10:27:00thinkphp框架执行任意代码漏洞修复方法: 用户可下载官方发布的补丁:http://www.nxadmin.com/tools/ThinkPHP_20120323_security_patch.zip 修正方法: 首先解压缩安全补丁文件。 2.1和2.2版本 替换补丁包中的... -
python和django的目录遍历漏洞(任意文件读取)
2019-03-16 15:11:411. 什么是目录遍历漏洞 “目录遍历漏洞”的英文名称是Directory Traversal 或 Path Traversal。指攻击者通过在URL或参数中构造 ...很多时候,我们也把它称作“任意文件读取漏洞”。 2. Python和Djan... -
Bash高危安全漏洞 解决方案
2014-09-27 10:00:47当用户正常访问时,只要shell是唤醒状态,这个漏洞就允许攻击者执行任意代码命令,并且已经在企业级软件中存在好长时间。 Bash漏洞的严重级别为“10”。它与“心脏出血”漏洞不同,“心脏出血”只能借助窃取用户电脑... -
漏洞复现----ThinkCMF框架任意内容包含漏洞分析复现
2019-10-29 09:06:270x00 简介 ThinkCMF是一款基于ThinkPHP+MySQL开发的中文内容管理框架。ThinkCMF提出灵活的应用机制,框架自身...攻击者可利用此漏洞构造恶意的url,向服务器写入任意内容的文件,达到远程代码执行的目的。 0... -
编辑器漏洞
2021-04-24 12:48:06二、Ewebeditor编辑器漏洞:Ewebeditor是基于浏览器的、所见即所得的在线HTML编辑器。她能够在网页上实现许多桌面编辑软件(如:Word)所具有的强大可视编辑功能。WEB开发人员可以用她把传统的多行文本输入框替换为... -
CISCO ASA设备任意文件读取漏洞复现 (CVE-2020-3452)
2020-10-08 16:09:05Cisco Adaptive Security Appliance (ASA) 防火墙设备以及Cisco Firepower Threat Defense (FTD)设备的WEB管理界面存在未授权的目录穿越漏洞和远程任意文件读取漏洞,允许未经身份验证的远程攻击者进行目录遍历攻击... -
PHP注入漏洞(附代码,具体步骤)
2019-08-01 22:12:02是否存在包含漏洞 inc包含about 全局搜索关键字 Ctrl+shift+f 自动跳转到Shell_exec($cmd)这一行,分析,返回到res,看前面是Windows就返回 ,得出没有过滤 二、审计思路展现 1.利用Web漏洞平台 2.进入到后台 开启...