20145332卢鑫 WEB安全基础实验
20145332 WEB安全基础实验
实验过程
·SQL字符串注入
·Database Backdoors step1
·Database Backdoors step2
·Phishing with XSS
在文本框中写钓鱼网站代码:
···
··· ![](http://images2015.cnblogs.com/blog/886702/201705/886702-20170515195304541-1133396586.png)
·Reflected XSS Attacks
在ACCESS CODE 框里填入获取COOKIE的javascript代码
·Log Spoofing
这里的user name处写入的内容是%0d%0aLogin succeeded !admin
·Stored XSS Attakcs
在Message里输入
(做蒙了,才发现忘截图了)
·Cross Site Request Forgery (CSRF)
在message里面输入 就会发出一个转钱的请求,盗取钱财。
·Blind Numeric SQL Injection
测试下效果,101是题目给的已知用户ID:
通过上一实验我们可以知道100用户并不存在:
效果知道了后,根据题目,我们知道pin是个数值,要知道cc_number对应的pin,则只有一个一个尝试,先使用<、>来大概确定范围(同and一起,and前为存在的用户ID,例如101,一旦and后面的语句,即判断pin的值大小成立,则下面就会显示存在用户,然后继续缩小范围进行查找,直到找到唯一确定的,即使用=号时成立)
直接在numer框中输入101 AND ((SELECT pin FROM pins WHERE cc_number='1111222233334444') = 2364 );
可以看到用户存在的显示,即成功找到cc_number为1111222233334444的pin值
题目说找到对应pin值后,将值输入框中,该实验即通过
实验体会
1.实验后回答问题
(1)SQL注入攻击原理,如何防御
答:原理:SQL注入攻击是攻击者在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,把SQL语句当做用户名等输入正常网页中以获取数据库信息的攻击,最终达到欺骗服务器执行恶意的SQL命令。
防御:加密或者hash密码和敏感的信息、封装数据信息
(2)XSS攻击的原理,如何防御
答:原理:恶意攻击者通过往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。
防御:对输入的数据进行过滤、合法性验证,对输入的地方进行输入字数控制
(3)CSRF攻击原理,如何防御
答:原理:CSRF是跨站请求伪造,是一种对网站的恶意利用,通过伪装来自受信任用户的请求来利用受信任的网站。
防御:定期清理保存的cookie、对于每一个表单使用不同的伪随机数值
2.实验总结与体会
这个实验涉及的SQL和XSS以前都涉及到过,但是当时理解的不是很深刻,这次加深了对这部分内容的理解,也算是最后一次实验对前几次都涉及了一下。