白帽子Web安全小白成长记2
第二课WEB安全基础
1. XSS(Cross Site Script)跨站脚本
攻击者向有XSS漏洞的网站中输入(传入)恶意的HTML代码,当其它用户浏览该网站时,这段HTML代码会自动执行,从而达到攻击的目的。如,盗取用户Cookie、破坏页面结构、重定向到其它网站等。理论上,所有可输入的地方没有对输入数据进行处理的话,都会存在XSS漏洞。
XSS类型:存储型,反射型,DOM型;
2.CSRF(Cross-site request forgery)跨站请求伪造
伪装来自受信任用户的请求来利用受信任的网站,或者说利用用户已登录的身份(cookie),伪装成用户操作
3.点击劫持
通过覆盖不可见的框架误导受害者点击而造成的攻击行为(如iframe透明页面)
4.URL跳转漏洞
借助未验证的URL跳转,将应用程序引导到不安全的第三方区域,从而导致的安全问题。
几种跳转方式:
Header头:header("location: ".$target);
JS:<script>window.location.href=\"$target\"</script>
META标签:http-equiv="Refresh" content="5"; url=...
5.SQL注入
SQL Injection
本质:数据和代码未分离,即数据当做代码来执行
输入万能密码admin'--
select * from users where user_name = '$NAME' and password = '$PWD';
这就变成了:(-- 后面为注释内容不执行)
select * from users where user_name = 'admin'-- and password = '$PWD';
SQL注入有两个条件:一是可以控制输入的数据;二是服务器拼接SQL执行;
6.命令注入
windows的DOS和linux的Bash有很多系统命令可以利用
如:ipconifg/net user/dir/find等
执行过程:
a. web调用可执行系统命令的函数,如PHP中的system/exec/eval等;
b. 函数或函数的参数可控;
c. 拼接注入命令;
7.文件漏洞
文件上传:可以上传Webshell,上传木马
文件下载:可以下载系统任意文件,下载程序代码
文件包含漏洞:上传文件中调用其包含其他文件方法注入恶意代码
网友评论