发射型XSS

漏洞的原理及修复方法

1.常见的触发场景

2.漏洞原理

3.漏洞危害

4.一些tips

5.如何避免&修复漏洞

直接将用户数据输出到浏览器,没有做安全处理

搜索:

www-data@:~/controller$ vim searchController.class.php

<?php

class secrchController extends baseController{

public $conn;

public function searchAction()

$keyword = request('keyword');

if( $keyword && $this->loged){

$model = new searchModel();

$feeds = $model->search($keyword);

$username = $this->username;

$url = '/index.php?c=mission&a=feed';

include 'tpl/search.tpl';

}elseif($this->loged){

$redirect = request('url');

$url = '/index.php?=mission&a=feed';

$username = $this->username;

include 'tpl/search.tpl';

}else{

$redirectURL = urlencode('http://poper.com/index.php?c=search&a=search');

header("Location: /index.php?c=index&url=".$redirectURL);

}

}

}

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

www-data@:~/controller$ vim searchModel.class.php

<?php

class searchModel extends baseModel{

public $conn;

public function __construct(){

parent:: __construct();

}

public function search($keyword){

$keyword = '%'.$keyword.'%';

$sql = "select username,url,content,time from mission where conten like ?";

$db_prepare = $this->conn->prepare($sql);

$db_prepare->execute(array($keyword));

$result = $db_prepare->fetchAll();

return $result;

}

}

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

www-data@:~/controller$ vim search.tpl

<?php

include 'head.tpl';

?>

<div class="container">

<div class="row row-offcanvas row-offcanvas-right">

<div class="panel panel-default col-xs-12 col-sm-9">

<div class="panel-body">

<span> please enter the username you want to search: </span>

</br>

<dir class="Center">

<form action="/index.php?c=search&search" method="post">

<div class="input-group output-group-lg">

<input type="text" name="keyword" class="form-control missionKeyword"></input>

<span class="input-group-addon missionSearch">Search</span>

</div>

</form>

<span>here is the result for:<?php echo $keyword;?> </span>

//修复方法:<span>here is the result for:<?php echo htmlspecialchars($keyword);?> </span>

?php

f(isset($feeds)){

foreachr($feeds as $feed){

echo '<ul class="list-group">'

echo '<li class="list-group-tiem">';

$mission_username = $feed['username'];

$mission_url = $feed['url'];

$mission_content = $feed['content'];

$mission_time = $feed['time'];

include 'feeds.tpl';

echo '</li>';

echo '</ul>';

}}?>

</tbody></table>

</div>

</div>

<div class="col-xs-6 col-sm-3 sidebar-offcanvas" id="sidebar" role="navigation">

<ul class="list-group">

<li class="list-group-item"><a href="/index.php?c=mission&a=feed&class=all"><span class="glyphicon plyphicon-tower">  All</a></li>

<li class="list-group-item"><a href="/index.php?c=mission&a=feed&class=tech"><span class="glyphicon plyphicon-th-list"></span> tech</a></li>

<li class="list-group-item"><a href="/index.php?c=mission&a=feed&class=news"><span class="glphincon glyphicon-th-list</span> news</a></li>

<li class="list-group-item"><a href="/index.php?c=mission&a=feed&class=other"><span class="glphincon glyphicon-th-list</span> other</a></li>

</ul>

</div>

</div>

</div>

<?php

include 'footer.tpl';

?>

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

www-data@w:~/tpl$ vim feeds.tpl

<div class="media">

<a class="media-legt media-middle" href="#">

<img data-holder-rendered="true" src="data:p_w_picpath/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9InllcyI/PjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iNjQiIGhlaWdodD0iNjQiIHZpZXdCb3g9IjAgMCA2NCA2NCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+PGRlZnMvPjxyZWN0IHdpZHRoPSI2NCIgaGVpZ2h0PSI2NCIgZmlsbD0iI0VFRUVFRSIvPjxnPjx0ZXh0IHg9IjEyLjk1ODMzMzk2OTExNjIxMSIgeT0iMzIiIHN0eWxlPSJmaWxsOiNBQUFBQUE7Zm9udC13ZWlnaHQ6Ym9sZDtmb250LWZhbWlseTpBcmlhbCwgSGVsdmV0aWNhLCBPcGVuIFNhbnMsIHNhbnMtc2VyaWYsIG1vbm9zcGFjZTtmb250LXNpemU6MTBwdDtkb21pbmFudC1iYXNlbGluZTpjZW50cmFsIj42NHg2NDwvdGV4dD48L2c+PC9zdmc+" style="width: 75px; height: 75px;" data-src="holder.js/75x75" alt="75x75">

</a>

<div class="media-body">

<h4 class="media-heading">user:<a href="" class="mission-username"><?php echo $mission_username; ?></a></h4>

<p class="mission-url">url:<?php echo $mission_url; ?></p>

<p class="mission-content">content:<?php echo $mission_content; ?></p>

<p class="mission-time">time<?php echo $mission_time; ?></p>

<p class="mission-delete"><a href="<?php echo $delete; ?>">delete</a></p>

</div>

</div>

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

<script>alert("test for search")</script>

1.找到一个反射型XSS漏洞

2.将url发送给别人

3.点击浏览url

漏洞危害:

盗取用户的cookie,模拟用户请求,讲反射型XSS持久化作为存储型XSS利用等。

在用户的的浏览器中执行任意javascript代码

一些tips

漏洞修复:

在输出所有用户可控的数据时,对数据做转义||编码。

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

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

转载于:https://blog.51cto.com/11672938/1975393

【安全牛学习笔记】反射型XSS***漏洞的原理及解决办法相关推荐

  1. 【安全牛学习笔记】CSRF跨站请求伪造攻击漏洞的原理及解决办法

    CSRF跨站请求伪造攻击漏洞的原理及解决办法 CSRF,夸张请求伪造漏洞 漏洞的原理及修复方法 1.常见的触发场景 2.漏洞原理:浏览器同源策略 3.DEMO 4.漏洞危害 5.如何避免&修复 ...

  2. 【安全牛学习笔记】CSRF跨站请求伪造***漏洞的原理及解决办法

    CSRF跨站请求伪造***漏洞的原理及解决办法 CSRF,夸张请求伪造漏洞 漏洞的原理及修复方法 1.常见的触发场景 2.漏洞原理:浏览器同源策略 3.DEMO 4.漏洞危害 5.如何避免&修 ...

  3. 【安全牛学习笔记】xss跨站

    xss跨站解释 xss类型分类      xss***手法      模拟一次xss*** 简述 跨站脚本***(也称为XSS)指利用网站漏洞从用户那里恶意盗取信息.***者通过在链接中插入恶意代码, ...

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

    手动漏洞挖掘 身份认证 常用弱口令/基于字典的密码破爆破 锁定账号 信息收集 手机号 密码错误提示信息 密码嗅探 手动漏洞挖掘 会话sessionID Xss / cookie importer Se ...

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

    手动漏洞挖掘 Directory travarsal / File include(有区别/没区别) 目录权限限制不严 / 文件包含 /etc/php5/cgi/php.ini allow_url_i ...

  6. kali环境下的ARP欺骗学习笔记以及driftnet无法抓取图片的解决办法

    arpspoof工具使用方法如下: arpspoof -i 网卡 -t 目标ip 网关 在局域网中获取到了本机的网卡名以及被攻击主机的ip和网关后可进行ARP断网攻击,被攻击主机无法上网,攻击成功.k ...

  7. 反射型XSS漏洞详解

    反射型XSS漏洞 如果一个应用程序使用动态页面向用户显示错误消息,就会造成一种常见的XSS漏洞.通常,该页面会使用一个包含消息文本的参数,并在响应中将这个文 本返回给用户.对于开发者而言,使用这种机制 ...

  8. 跨站脚本攻击之反射型XSS漏洞【转载】

    转载自FovWeb.com 如果一个WEB应用程序使用动态页面传递参数向用户显示错误信息,就有可能会造成一种常见的XSS漏洞.一般情况下,这种页面使用一个包含消息文本的参数,并在页面加载时将文本返回给 ...

  9. Apache Sling App CMS <1.1.4 存在反射型XSS漏洞(CVE-2022-46769)

    漏洞描述 Apache Sling 是一个基于可扩展内容树(extensible content tree)的 RESTful Web 应用框架. 1.1.4 之前版本的 Apache Sling 中 ...

最新文章

  1. JavaScript-也来谈--闭包
  2. Flutter切换tab后保留tab状态
  3. 开发相关手册、STM32各种库文件、相关软件、工具连接等(不断更新)
  4. rectint 函数
  5. 请接受这份货真价“无”的PPT
  6. android图片压缩上传系列-基础篇
  7. java rsa 验_Java使用RSA加密解密签名及校验
  8. Oracle数据库中正确的导入dmp数据库文件
  9. Spring的起源和背景
  10. 七月算法机器学习 6 特征工程 小案例
  11. python水仙花数
  12. 整人代码好玩到没朋友
  13. Matlab绘图方法整理(超完整版)
  14. Access2016学习16
  15. python提取微信聊天语音_GitHub - dennischancs/wechat-asr: 微信语音批量转文字 python编写 用百度智能云短语音识别API实现 windows下的使用...
  16. java短信模板设计,全网疯传
  17. 从一个 bug 中延伸出 canvas 最大内存限制和浏览器渲染原理
  18. 编译原理--词法分析器(python语言实现)
  19. Android 8.1中Settings中恢复出厂设置流程
  20. 每月在“知乎”做出8万的业绩,告诉你怎么用截流赚钱?

热门文章

  1. matlab corner 舍弃,CornerNet为什么有别于其他目标检测领域的主流算法?
  2. linux图片格式转换工具,在Linux系统上安装和使用Converseen批量图像转换器的方法...
  3. 2021-08-12:浏览器使用window.open 新页签被拦截的问题
  4. mt4 谐波_谐波原理看美元指数:短期看涨鲨鱼或令多头重获优势!
  5. anaconda安装rdkit安装指南
  6. 【MATLAB航空航天工具箱】学习笔记--时间系统
  7. 【数学】凸函数与詹森不等式(琴生不等式)解析
  8. 软件测试学习笔记——性能理论知识
  9. J2ME资源:各厂商SDK和模拟器下载地址
  10. 基于tiny4412的Linux内核移植 -- 设备树的展开