首页 > 编程知识 正文

cookie和session登录,修改浏览器设置为接受cookie

时间:2023-05-03 21:49:04 阅读:127203 作者:3327

这两天看两篇文章,对于IP诈骗,实现的方式一种是修改HTTP头,一种是重复拨号。 在这方面,贫道有点经验。 请不要鄙视贫道。 大约五年前,还是大学三年级或四年级的时候,我帮朋友穿便服。 制作了在当时的几个论坛上宣传,自动贴上和投稿的机器人。 当时对TCP/IP的了解还不够深,在写自动注册模块时,使用代理服务器方式使网络管理员无法发现注册账户全部为IP。 之后,我还写了自动投票等工具。

服务器限制访问时,大致分为以下几种。

1、使用Cookies或会话进行限制;

2、基于注册账号限制

3、验证码限制。

4、在缓存模块中记录IP限制;

5、数据库记录的IP限制

分别讨论以上几种情况,以一个投票系统为例。

一、突破Cookies或者Session限制

1 .浏览器打开网页,投票

2 .关闭浏览器,

清除Cookies

4 .重复上述步骤。

可以按照以上步骤进行人工投票,但这种限制等于没有。 当然,只要能编程,任何语言都可以写机器人。 以包装在. Net类库中的HttpWebRequest为例,如果不在HttpWebRequest中设置CookiesContainer,则禁用Cookie和Session限制。 你看,这种方式很容易就解决了问题。 甚至可以通过Javascript在浏览器中打开网页。

二、突破注册帐号限制

用这种方法人工处理的方法不太可行,除非上一组员工操作。 目前淘宝部分网店的销售似乎采用了这种方式。 喂,我在网上招募贴人。 我在央视新闻频道也看过这方面的报道。 另外,也有贴上(应该是写软文的),每月10K的人。 当然,我觉得人在做技术工作,文章写得好,写得差,没人看。

话走题了。 谈谈体力活吧。 体力活的话由程序员来做吧。 编写程序自动注册帐户,自动粘贴,处理几个站点论坛的粘贴模式也很容易解决。 当然,注册的前提是没有邮件认证和注册码等限制。 如果邮件验证成功,则只需通过pop3协议或虚拟邮件登录,获得邮件内容,然后通过活动地址将其激活。 一些网站使用的激活码与用户信息相关,所以这里不具体说明。 说不好。 关于用户信息,那个有可能可以得到。 例如,把密码的MD5当作激活码,它也不用注册到邮箱地址中,直接激活就可以了。

三、突破验证码限制

一般来说,在大网站上,验证码很难解密,噪声等会被验证,位置可能会发生变动。 我以前写过如何处理CSDN的验证码的文章,总体上是去除图像中的干扰色,将干扰降到最低。 而且,无论是对字进行模式识别还是矢量识别,都需要很多劳力。 一般网站很容易破解。 大多数网站都很容易操作。 是身体的力量。 但是,一个网站的一个特征,还是很难处理。 还是工作量太大了。

四、 突破临时性IP限制

这比数据库记录IP的解决方案更常见。 为什么? 不能限制性地杀IP吧? 如果一个人的IP只能投一票的话,和他共享IP的人(网络)不是不能投票吗? 这个方案一般表现为单位时间t呢。 每个IP只能投m票。 这种方式可以突破,让程序定时投票,更终极的解决方案是IP诈骗。 以下详细说明。

五.突破永久IP限制

这种限制常见于限制某些随便贴的人。 如前所述,看到两个帖子谈论这方面,一般有以下四种方案。

修改HTTP标头

修改HTTP是让对方服务器认为你是代理服务器。 那么为什么会有这样漏洞的网站呢? 这是代理服务器的故事。 代理服务器有透明代理和匿名代理。 对于匿名代理,请求标头和您自己的请求标头没有差别。 密钥是透明的代理服务器,这样的服务器会传输你真正的IP。 发生了问题。 一些网站为了更好地区分用户并获得用户所在的地区,去读这个转发的IP,并认为这个转发的IP是真正的IP地址。 这有漏洞,攻击者通过伪造该地址,服务器可以识别错误。 具体办法如下:

3358 www.cn blogs.com/Wang Wei/archive/2009/09/19/1570242.html

由于某些站点上的限制通常不会读取此透明代理转发的标头,因此此方法在大多数情况下不适用。

2、重复拨号

可行性强,缺点是同一IP段的IP地址太少,需要占用带宽帐户,而且可扩展性(汗,这句话出现了)不强。 什么是可扩展性? 例如,如果要限制我同时在五台机器上操作,我会申请五个账户。 但是,通常这些帐户在一个地区,每个IP都有重复。 上面的IP地址太少了。 同时,这种方式要求速度也很慢。

3、代理服务器

我没说这个,但是如果代理服务器很多的话,还有尝试的余地。

4、终极方案IP诈骗

要用IP欺骗,必须理解TCP/IP的原理。 这个我就不详细说了,贫道对路由方面也不太清楚。 众所周知,套接字2允许使用原始套接字,而原始套接字允许自定义IP标头。 IP地址包含在此IP标头中。 这样,可以伪造IP。

但是这种伪造的IP价值不大,最大的用处是被用来作DDOS攻击(汗一个)。这种简单地伪造IP,并不能建立三次握手。可以看贫道以前写的一篇文章http://www.cppblog.com/birdshover/archive/2008/11/10/66526.html(C++的代码,C#也可以实现的)。

这里可以看出,这种方式确实可以用的,但是要与其他的东西相配合。怎么配合呢?这里就要简单说下TCP协议。TCP协议的三次握手分别是:
Client(你的机器) ==== 请求(Syn) ====> Server(服务器)
 Server === 应答(Ack,Syn) ========> Client
 Client ==== 验证信息(ACK+1) =======> Server

 Client <====数据传递=====> Server

Syn是一个数字,是客户端随机生成的,服务器拿到这个数字同时对客户端应答,同时发送一个ACK的数字,ACK数字是服务器随机生成的。客户端拿到服务器端发回的Syn和Ack,首先检查Syn是不是自己发出去的,如果不是,数据包被丢弃。如果是的话,那就会把ACK发回去,服务器如果坚持这个ACK是自己发出去的,那么就认为和这个IP的连接是合法的了。

看看这个想到了什么?邪恶一点的想法,如果机器A与服务器在通信,而你的机器B拦截这个信息,同时把机器A弄死机,你就可以劫持这个会话。当然,这里面有很多其它需要处理的问题,主要是路由问题。

再邪恶一点的想法,直接伪造IP给服务器发送TCP连接请求。这里要注意,你的这个请求发过去,而服务器应答的时候,要保证其应答的IP没有被启用。比如,你用A的地址发了个请求给服务器,而服务器应答A,那样的话,A就会告诉服务器我没有发送过这个请求,那服务器就把连接关闭(关闭可能不恰当,说从TCP堆栈里删除了恰当一点)掉了。那假如A机器是关机状态呢?那服务器就会等待!这个就是DDOS攻击的原理,服务器在那里等,而TCP堆栈的大小是固定的,在服务器没反应过来之前,一直发连接,那么服务器就会TCP堆栈满了,这样就不会对其它的请求响应了,其它人的请求别拒绝了。

而伪造IP是和这个有关的,有两种方式伪造IP。一种是猜测Ack应答的数字,另外一个是欺骗它MAC地址。

猜测ACK应答数字,这个和TCP的实现原理有关,TCP启动的时候,是随机了一个数字没错,但是这个数字增长是有规律的。这里就不详述了,一般是先建立一个正确的连接,拿到这个数字,然后预测下一个数字,同时给服务器发送个请求,然后等服务器应答等待(相当于被DDOS)的时候,把这个预测的数字发过去。如果服务器验证成功这个数字,那么,就会建立连接。这个过程像是暴力破解,命中可能不是很高,在伪造IP投票系统中,效率不高。

第二种方式,对服务器进行MAC地址欺骗,就是把你的电脑的MAC地址与伪造的IP发过去,形成ARP欺骗。这样的话,它应答的数据包就不会被你的电脑抛弃,就可以用WinPcap在链路层取得这个数据包,进而得到Ack数字。也就是先用ARP欺骗一下,然后再伪造IP连接。在局域网中,实验是成功的,但是在广域网中,如何在路由上进行传递,贫道现在也没有经验。网上有种方案说是对路由器进行IP Table的欺骗,看得是云里来雾里去,仿佛贫道真的位列仙班了~~~。

基本上贫道见过的解决方案也就是这些了。另外对于注册用户那块,其实还是有其它一些思路,可以劫持到其它用户的会话的,就不详述了,等哪天再聊聊。最近找工作有点郁闷,就说到这里吧。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。