网络安全之IP伪造

眼下非常多站点的涉及存在一些安全漏洞,黑客easy使用ip伪造、session劫持、xss攻击、session注入等手段危害站点安全。在纪录片《互联网之子》(建议搞IT的都要看下)中。亚伦·斯沃茨(真实人物,神一般的存在)涉嫌利用麻省理工的网络,通过ip伪造从JSTOR中下载了150万篇论文。本文通过firefox看下一个简单的ip伪造是怎样实现的。

1、client的ip是通过http的头部发送到server端的

比方,在打开网址www.baidu.com的时候。通过firebug能够看到请求头部,头部里包括client的信息,比方cookie等。

一般后台获取的clientip的代码为:

php代码:

复制代码
private function _get_client_ip() {

$ip = $_SERVER['REMOTE_ADDR'];

if (isset($_SERVER['HTTP_CLIENT_IP']) && preg_match('/^([0-9]{1,3}\.){3}[0-9]{1,3}$/', $_SERVER['HTTP_CLIENT_IP'])) {

$ip = $_SERVER['HTTP_CLIENT_IP'];

jsp代码:

复制代码
public String getIpAddr(HttpServletRequest request) {
       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;
}

代码片段即是获取clientIP,这段程序会尝试检查 HTTP_CLIENT_IP, HTTP_X_FORWARDED_FOR, 依据之前的原理说明,以 HTTP_开头的 header, 均属于client发送的内容。那么,假设client伪造 Client-Ip, X-Forward-For,不就能够欺骗此程序,达到"伪造 IP"之目的?

伪造这项值?假设你会敲代码。并了解HTTP协议,直接伪造请求 header 就可以。

或者使用 Firefox的 Moify Headers插件就可以。

2、Modify Headers伪造ip

安装Modify Headers后,加入一个X-Forwarded-For,并填入一个ip,置为可用后,打开对应网页,server就会获取到该伪造ip。

3、站点怎样防护ip伪造

既然能够通过ip伪造,站点怎样过滤这些伪造的ip? 一般做法是在应用server上强制将X-Forwarded-For的值设置为client真实ip,详细操作请自行研究。

网络中存在此漏洞的站点非常多,尤其是一些投票类的站点。通过限制ip(一个ip仅仅能投一次票,或者一个ip仅仅能在一定的时间段投一次票)来限制重复投票的站点。

别人可能会利用此漏洞来伪造ip。突破这样的限制。所以站点开发人员要重视这类安全。

相关推荐
Warren981 小时前
软件测试-Selenium学习笔记
java·javascript·笔记·学习·selenium·测试工具·安全
字节跳动安全中心1 小时前
智能体防御 | 一文了解3种系统提示词加固方法
安全·llm
搬码临时工4 小时前
端口映射原理操作详解教程:实现外网访问内网服务,本地路由器端口映射公网ip和软件端口映射域名2种方法
网络·tcp/ip·智能路由器
黑客影儿5 小时前
黑客哲学之学习笔记系列(三)
笔记·学习·程序人生·安全·职场和发展·网络攻击模型·学习方法
XY_墨莲伊5 小时前
【网络安全实验报告】实验六: 病毒防护实验
安全·web安全
厦门辰迈智慧科技有限公司6 小时前
水闸安全综合监测系统解决方案
网络·物联网·安全·自动化·监测
深盾安全6 小时前
Python脚本安全防护策略全解析(下)
安全
叫我阿柒啊6 小时前
自学渗透,学会五分钟安装DVWA漏洞靶场
后端·安全
励志五个月成为嵌入式糕手8 小时前
0819 使用IP多路复用实现TCP并发服务器
java·服务器·tcp/ip
小云数据库服务专线15 小时前
GaussDB 数据库架构师修炼(十三)安全管理(5)-动态数据脱敏
安全·数据库架构·gaussdb