lake2的专栏

千秋邈矣独留我,百战归来再读书

原创 假作真时真亦假——“真实”IP带来的安全隐患收藏

新一篇: 跨站实现HTTP会话劫持 | 旧一篇: TCP端口扫描的ASP实现

Author: lake2, http://lake2.0x54.org

 

让我们看一段 ASP 代码先:

 

    Function getIP()

         Dim strIPAddr as string

         If Request.ServerVariables("HTTP_X_FORWARDED_FOR") = "" OR InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), "unknown") > 0 Then

             strIPAddr = Request.ServerVariables("REMOTE_ADDR")

         ElseIf InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",") > 0 Then

             strIPAddr = Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), 1, InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",")-1)

         ElseIf InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ";") > 0 Then

             strIPAddr = Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), 1, InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ";")-1)

         Else

             strIPAddr = Request.ServerVariables("HTTP_X_FORWARDED_FOR")

         End If

         getIP = Trim(Mid(strIPAddr, 1, 30))

    End Function

 

这段代码的功能是得到客户端真实ip,也就是当客户端使用了透明HTTP代理的时候取得真正的客户端ip;匿名代理返回代理ip;无代理返回客户端ip

想一下,为什么该代码能够从透明代理那里得到真实的ip呢?莫非透明代理服务器会发送我们的真ip?本地搭建一个透明代理,抓包分析之:

 

GET /test/ipSpoof/test.asp HTTP/1.1

Accept: */*

Accept-Language: zh-cn

Accept-Encoding: gzip, deflate

User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; TencentTraveler ; .NET CLR 1.1.4322)

Host: localhost

Connection: Keep-Alive

Cookie: tc_total_cookie_datetime_14734=2006-5-29%2010%3A45%3A26; PJBlog25Setting=ViewType=list; ASPSESSIONIDQQQGQMDQ=HLGHFEADMMDPHAFJDHBLBOPD

X-Forwarded-For: 10.0.0.54

 

 

 

哈哈,原来我们的真正ip被服务器发送出去了,那么,如果我们修改X-Forwarded-For的值再提交的话……嘿嘿,这样就可以伪造任意的“真实”ip啦。

图中所示是我在某Blog上面伪造的光棍ip ^_^

 

伪造了“真实”ip,可以做很多事情,最简单就是以任意ip发表评论,要是管理员看到一个123.456.789.000ip一定会被你郁闷到的。

更高级点,应该可以实现突破ip限制、跨站和SQL注射,当然需要结合具体的程序代码来看了。

 

发表于 @ 2006年07月02日 01:27:00|评论(loading...)|编辑

新一篇: 跨站实现HTTP会话劫持 | 旧一篇: TCP端口扫描的ASP实现

评论

#LtEs 发表于2006-07-02 04:03:00  IP: 222.210.115.*
lake2就是lake2

Asp被你玩得不成样了

估计比玩C/C++还熟悉了吧

嘿嘿 随便混个链接

http://ltes.ik8.com
#guest 发表于2006-07-02 10:52:00  IP: 221.1.167.*
修改X-Forwarded-For的值再提交???用nc提交??感觉没有你说的这么简单..
#lake2 发表于2006-07-02 17:57:00  IP: 125.71.1.*
自己telnet提交就是,反正数据是自己构造的……
#guest 发表于2006-07-02 18:28:00  IP: 221.1.167.*
自己telnet提交就是,反正数据是自己构造的……
__________________________
____________________________
???

你就说下你上面的那个图片是你怎么提交的吧??谢谢了..
我估计是先抓包,在nc提交,不过感觉有没有这么简单,现在的网站一般都有验证码的,不好弄..
#xi4oyu 发表于2006-07-02 22:26:00  IP: 221.11.70.*
遇到这种透明代理真是郁闷

要是服务端不 用这种方式检验的话,IP也伪造不了了,呵呵,这叫自作自受^_^
#lazyboy1981 发表于2006-07-02 17:29:00  IP: 219.128.161.*
在哪里修改X-Forwarded-For?
在本机?还是在代理上?

在本机上装代理,然后修改代理,然后那个网站取得的是代理上的X-Forwarded-For而不是真实的?

哈哈,好像是这样。
#fc8264.meibu.com 发表于2006-07-03 11:32:00  IP: 219.236.20.*
又要教人做坏事了. (开源的自定义web表单工具, 在: fc8264.meibu.com )
#lake2的哥哥 发表于2006-07-03 13:41:00  IP: 202.99.27.*
lake2是坏孩子!大家不要学他啊!!!
#lake2 发表于2006-07-03 15:06:00  IP: 125.71.1.*
哈哈,你明白我的意思?没明白!lake2的孤独谁人知:)
#aking 发表于2006-07-03 14:51:00  IP: 220.174.9.*
明白你说的意思
不过你的方法只能针对你所说的情况
其实还是不能隐藏你的ip的
#guest 发表于2006-07-03 15:27:00  IP: 221.1.160.*
英雄自古多寂寞!!
#涔呮案 发表于2006-07-03 16:40:00  IP: 218.94.95.*
和我一样的乱码错误。
#111111 发表于2006-07-03 18:00:00  IP: 60.31.103.*
还是没说出到底怎么做
#ip 发表于2006-07-03 22:20:00  IP: 125.112.33.*
一打开此页面,金山网镖就提示拦截了 127.0.0.1的某某端口到127.0.0.1的82端口的tcp数据包。
#xi4oyu 发表于2006-07-04 19:34:00  IP: 222.90.72.*
呵呵,自己用NC提交过后,你自己真实的IP被认为成代理服务器的IP了.
#kuhanzhu 发表于2006-07-05 19:51:00  IP: 125.112.31.*
也是,估计弄一句话也可以了。
#Coma 发表于2006-07-06 02:45:00  IP: 218.0.2.*
我他妈的能不能仰慕你啊?
#lake2 发表于2006-07-07 12:45:00  IP: 125.71.1.*
你又不是女的,所以……你给我靠边站吧!
#菜鸟红红 发表于2006-07-19 01:11:00  IP: 125.71.1.*
^_^,我不懂,我还是喜欢看热闹。
lake2的哥哥说lake2不是好孩子。哦哦哦哦哦
#Neeao 发表于2006-07-22 00:35:00  IP: 220.207.140.*
每次来你这里都有收获,嘎嘎!
你得钻研精神,俺不得不佩服你丫得一下!
#lake2 发表于2006-07-22 09:14:00  IP: 220.166.84.*
Neeao过奖老,这个不是钻研精神,这个是……灵感^_^
#441958272 发表于2006-08-08 14:18:00  IP: 58.46.134.*
呵呵。我认为一个真真的高手隐藏自己的IP不是这样的。我们应该做5级跳板,3个国外IP。2个国内IP,我们这里用A,B。C。D。E。F表示。F表示本机,E假设是山东,D假设台湾。C假设韩国。B假设美国。A假设山西,只有这样才能真真做到隐藏自己的IP
#lake2 发表于2006-08-08 15:22:00  IP: 220.166.84.*
哇,楼上的……建议你……以后看文章要仔细
#yxqadr 发表于2006-08-31 22:51:00  IP: 220.163.26.*
441958272 此人有问题.
#大名 发表于2006-09-19 02:02:00  IP: 218.6.241.*
呵呵。我认为一个真真的高手隐藏自己的IP不是这样的。我们应该做5级跳板,3个国外IP。2个国内IP,我们这里用A,B。C。D。E。F表示。F表示本机,E假设是山东,D假设台湾。C假设韩国。B假设美国。A假设山西,只有这样才能真真做到隐藏自己的IP




这个可真是的、高手啊!!!
#sfgkwfnh 发表于2006-10-14 15:31:00  IP: 222.209.128.*
lake2不光技术好 人也很好
向你学习ing`````
#sfgkwfnh 发表于2006-10-14 15:33:00  IP: 222.209.128.*
lake2不光技术好 人也很好```
向你学习```
#sfgkwfnh 发表于2006-10-14 15:39:00  IP: 222.209.128.*
lazyboy1981 发表于2006-07-02 17:29:00 IP: 219.128.161.*

请问如何不显示ip最后一位的呢?
#sfgkwfnh 发表于2006-10-14 15:41:00  IP: 222.209.128.*
呵呵 我知道了哈
真不好意思
给你弄了些多余的评论 影响环境
发表评论  


当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
Csdn Blog version 3.1a
Copyright © lake2