$.ajax使用总结(二):伪造IP地址
来源:互联网 发布:淘宝联盟网站推广设置 编辑:程序博客网 时间:2024/06/14 13:01
在JAVA与PHP的程序中,为了保证IP的正确性,经常采用如下的方法获取浏览器端的IP地址,代码如下:
String ip = request.getHeader("x-forwarded-for");if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getHeader("Proxy-Client-IP");}if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getHeader("WL-Proxy-Client-IP");}if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getRemoteAddr();}return ip;
恰恰因为这所谓的安全性,才让我们找到了轻易替换IP地址的方法,我们只需要伪造这样的头部“x-forwarded-for”、“Proxy-Client-IP”、“WL-Proxy-Client-IP”,即可让服务器认为我们的地址是伪造的地址,从而绕过服务器端IP地址范围、单一IP地址不可多次访问等限制措施。
$.ajax的伪造IP地址的方法如下:
$.ajax('/login', { headers : { 'x-forwarded-for': ip, // 'Proxy-Client-IP': ip, 'WL-Proxy-Client-IP': ip }, method:'POST', contentType:'application/json;charset=utf-8', // 以Payload方式提交 data : JSON.stringify(data), success : function(datas) { // 输出结果 console.log(datas) }})
经测试,以上方法能骗过网上很多的IP地址测试,比如拉选票等,产生随地IP的方法如下(太简单粗暴了,建议改进):
// 这产生的IP可能会落在内网function createIp() { var a = Math.round(Math.random() * 250) + 1, b = Math.round(Math.random() * 250) + 1, c = Math.round(Math.random() * 240) + 1, d = Math.round(Math.random() * 240) + 1; return [a, b, c, d].join('.');}
总结
不断改进IP地址的获取方法,比如从流量中解析IP地址(当然也可以被伪造),才能避免被浏览器端的请求欺骗。
阅读全文
0 0
- $.ajax使用总结(二):伪造IP地址
- 客户端IP地址伪造
- curl伪造IP地址
- PHP使用curl伪造IP地址和header信息
- PHP使用curl伪造IP地址和header信息
- PHP使用curl伪造IP地址和header信息
- 伪造源IP地址的DoS攻击
- 伪造源IP地址的DoS攻击
- 火狐浏览器伪造任意IP地址
- ip,mac地址等是否可以伪造
- 安全开发之IP地址伪造
- PHP伪造IP或来源地址
- 伪造链接地址的二种方法
- 伪造ip
- 伪造IP
- 伪造IP
- 使用CURL伪造来源网址与IP
- php curl 对IP与来源地址的伪造
- 图像缩放函数(CImage)
- Centos7.0编译安装lnmp环境(nginx1.9.9+php7.1.6+mysql5.7.17)
- GET 和 POST区别
- 牛客网算法学习笔记-概率(2)
- 一篇文章告诉你关于NFC的方方面面
- $.ajax使用总结(二):伪造IP地址
- 【如何快速的开发一个完整的iOS直播app】(原理篇)
- ionic 自定义插件调用aar
- Swift之动态适配UITableView的cell高度
- Centos下安装JDK环境配置
- json序列化和反序列化
- zip函数
- ES6循环数组新方法for-of(转)
- Linux的命令及解释