投票系统程序设计缺陷分析
1.题目描述
背景介绍
年终了,公司组织了各单位"文明窗口"评选网上投票通知。 安全工程师"墨者"负责对投票系统进行安全测试,看是否存在安全漏洞会影响投票的公平性。
实训目标
1、了解浏览器插件的使用;
2、了解开发程序员对IP地址获取方式;
3、了解网络协议软件的使用,如burpsuite等;
解题方向
根据页面提示,进行投票页面测试。
2.解题思路
打开靶场要求为ggg号选手投票让他获得第一名,但是只有一次机会!!!所以怎么给他投更多的票呢????
由提示可以看出,它应该是限制IP,也就是一个IP只能投一次。
这就要知道PHP获取IP的一些方式,其中x-forwarded-for方式是可以伪造的,在数据包中添加即可。
添加形式:
x-forwarded-for: 192.168.1.1
但为了最终ggg的第一,我们不可能一个一个的改一个一个的发送,要经常更改IP地址,这就用到了burpsuite的一些功能。
3.解题流程
1.抓取为ggg投票的数据包,在其中添加 x-forwarded-for: 192.168.1.1
2.为了得到多变的IP地址,将IP的后两位加入到变量中(后两位IP是变量的IP数就已经60000多个了,够用了),选中IP第三位右键send to Intruder 添加变量。为了观测实时提交时的response,可以右send to repeater。