https转换http

https可以理解为http的安全协议,很多时候通过http协议我们可以获取很多有用的信息,比如提交表单时,我们可以抓取到http协议的tcp包。比如,下面是用commview 6.0抓取的一个tcp包,是在javaeye里登陆时截取的,包里有提交的方式,服务器地址,表单的属性,等等。
POST /login HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-silverlight, */*
Referer: http://www.iteye.com/login
Accept-Language: zh-cn
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)
Host: www.iteye.com
Content-Length: 40
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: _javaeye3_session_=BAh7BjoPc2Vzc2lvbl9pZCIlNzllNmI3MzcwNDE4MzlhMzBjYjA2N2U3MDI1ZTJkMTU%3D--f30f5c5924428ea990acd76e70c4481a08c224bb

name=19841026&password=hjy1984&x=90&y=25HTTP/1.1 302 Found
Transfer-Encoding: chunked
Vary: Accept-Encoding
Location: http://www.iteye.com/
X-Runtime: 3
Content-Type: text/html; charset=utf-8
Content-Encoding: gzip
Set-Cookie: remember_me=no; domain=iteye.com; path=/; expires=Sun, 05-Sep-2010 08:59:26 GMT
Set-Cookie: _javaeye3_session_=BAh7BzoPc2Vzc2lvbl9pZCIlNzllNmI3MzcwNDE4MzlhMzBjYjA2N2U3MDI1ZTJkMTU6DHVzZXJfaWRpA9MLBw%3D%3D--cd620d567e0bf8e26137a56e604fab8972a601e4; domain=.iteye.com; path=/; HttpOnly
Cache-Control: no-cache
Date: Fri, 05 Mar 2010 08:59:26 GMT
Server: lighttpd/1.4.20

62
.?.钋怟...塘
€ ..繳..锌┹胓?..訝勴M?.S+.’q蠽_?芀?僱捠沮在?艮萆.?.j.K*1珓&.伾!?a?瓽湮Y...
0

通过分析tcp包可以找到我们需要的数据,当然很多服务器对用户的姓名和密码都采取了编码加密了的。
而基于https协议的提交,是无法截取到tcp包的,对于对安全性要求较高的网站,这是比较有效的防范方法。比如,许多网上银行都是采取的这种方式。但这并不意味着我们就无法截取到tcp包。拿雅虎的登录为例来说。
这是雅虎登陆的地址:[url]https://login.yahoo.com/config/login?.done=http://answers.yahoo.com%2findex&.src=knowsrch&.intl=us&rl=1[/url],可以看出它是基于https协议的,一般我们用第三方工具是截取不到tcp包的,但是通过这种方式是可以实现的。
首先,在地址栏里输入一段脚本语言,[url]javascript:alert(document.forms[0].action='http://login.yahoo.com/config/login?.done=http://answers.yahoo.com%2findex&.src=knowsrch&.intl=us')[/url],action里面就是我们要提交的地址,注意https要换成http,通过这种方式,就将https协议转换为http协议了,然后再提交表单就可以截取到tcp包了。
POST /registration HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-silverlight, */*
Accept-Language: zh-cn
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)
Host: edit.yahoo.com
Content-Length: 333
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: B=acla3up5p1ijp&b=4&d=FO1CJMZpYFQJydKevdHGI86lmns-&s=ut&i=Vy8u5phPqz0CPdeJM8eu; F=a=tbl1mLAMvTOnrRlyTci2GGxRWXBV0iNOQCITPpzhNzwRImcA_MfQHNTDpU4YRnQZlkPVHtCm2LBfgFbOkQfNcOzo.KNY.skZxWoRoNNhyR.C&b=6vx_; YLS=v=1&p=0&n=9; PH=fn=TYoDa.r0pjeW0tt_lpo-&l=en-US; C=mg=1

.tries=2&.src=knowsrch&.md5=&.hash=&.js=&.last=&promo=&.intl=us&.bypass=&.partner=&.u=9u98vbh5p1j7h&.v=0&.challenge=nAHKKXsZUBPXWsNLUYbrmTOF3tfL&.yplus=&.emailCode=&pkg=&stepid=&.ev=&hasMsgr=1&.chkP=Y&.done=http%3A%2F%2Fanswers.yahoo.com%2Findex&.pd=knowsrch_ver%3D0%26c%3D%26ivt%3D%26sg%3D&login=hunicho&passwd=hjy1984&.save=Sign+InHTTP/1.1 302 Found
Date: Fri, 05 Mar 2010 09:22:09 GMT
P3P: policyref="http://info.yahoo.com/w3c/p3p.xml", CP="CAO DSP COR CUR ADM DEV TAI PSA PSD IVAi IVDi CONi TELo OTPi OUR DELi SAMi OTRi UNRi PUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE LOC GOV"
Location: https://edit.yahoo.com/registration
Cache-Control: private
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html

55

<!-- r05.member.sp2.yahoo.com uncompressed/chunked Fri Mar 5 01:22:09 PST 2010 -->

0

login=hunicho&passwd=hjy1984这两个就是用户名和密码。一般采用了https协议后,就不会再加密了,除非对安全要求极高。
这个转换方式,感觉可以说也是https的一个bug.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值