标签:png jar 一个 sql命令 exp 操作 百度云 local FQ
程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,攻击者利用SQL命令欺骗服务器执行恶意的SQL命令,获得某些他想得知的数据。
就像我们上次做实验对网页登陆的账户做了密码长度的限制,可以限制输入的长度、检查输入变量的数据类型,限制特殊字符的输入,把用户输入的or, –,‘;等关键字和特殊字符都过滤了,大不了抛出异常而已呗…… 或者用语言内建的安全机制(比如说 JDBC 的PreparedStatement就可以很大程度的防止 SQL 注入)
XSS攻击全称跨站脚本攻击,也由于没有对用户输入数据的合法性进行判断,攻击者在网页上插入恶意代码,攻击用户。
与防御SQL注入一样,可以通过检查用户的输入字符串,并做出限制。
跨站请求伪造,攻击者通过伪造身份等方式来达到一些非法目的,以你的名义来发送恶意请求。
使用验证码,表单中附加随机值,以此来防止冒充。
真的是前人栽好树,后人好乘凉呀,只需要去杨正晖同学的百度云里下载7.1版本的webgoat然后拷贝到虚拟机里就可以用,之前我也下载了8.0版本的,结果他的答题模式是不一样,所以就放弃了 。
将7.1版本的webgoat下载好之后拷贝到虚拟机中,打开终端进入该目录输入
java -jar webgoat-container-7.0.1-war-exec
然后打开浏览器在地址栏输入localhost:8080/WebGoat
即可进入webgoat登录界面=-=
用默认帐号和密码即可登录。
在这之前需要将自己的火狐浏览器稍微优化一下。。。。比如把浏览器调成中文,给浏览器加装两个插件可以翻译网页和取词翻译,当然这个在国内可能不太友好要FQ。。。当我没说哈哈哈哈哈
不过好像没什么用,太慢了,国内不支持。
原理大概就是要修改一下输入操作,这里kali上有自带的开发人员工具调试。要改的地方有两处第一个是SELECT * FROM weather_data WHERE station = [station]
拦截报文将station字段后补充成一个永真式101 OR 1=1。于是整个语句就变成了SELECT * FROM weather_data WHERE station = 101 OR 1=1
第二处要改的是这里,加一个恒等式就行
然后就可以看到所有城市的天气。。。
标签:png jar 一个 sql命令 exp 操作 百度云 local FQ
原文地址:https://www.cnblogs.com/zhangweiye20154330/p/9107871.html