HTTP 附带cookies模拟登录 (RSA加密)
来源:互联网 发布:商标r和tm的区别 知乎 编辑:程序博客网 时间:2024/06/08 16:01
HTTP 附带cookies模拟登录原理很简单,首先构建HTTP请求,登录成功后将返回的cookies信息保存起来,然后客户端用保存的cookies进行Get请求进行,进行欺骗浏览器访问,此次我是用博客园的进行登录跳转,没想到这网站post的数据是用RSA加密,内心这个崩溃啊,早上是用HTTP请求模拟微信公众号给用户发送信息,没想到微信也是对请求后跳转的网页进行了加密处理,下面是模拟登录的代码
/// 获取Cookies /// </summary> /// <param name="postData">post到URL的数据</param> /// <param name="url"></param> /// <returns></returns> public static CookieContainer GetCookies(string postData, string url) { try { CookieContainer cookies = null; HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest; request.CookieContainer = cookies; request.ContentType = "application / json; charset = utf - 8"; request.Method = "post"; request.ContentLength = postData.Length; Stream requestStream = request.GetRequestStream(); Byte[] bytes = System.Text.Encoding.UTF8.GetBytes(postData); requestStream.Write(bytes, 0, bytes.Length); requestStream.Close(); ServicePointManager.CertificatePolicy = new AcceptAllCertificatePolicy(); HttpWebResponse response = request.GetResponse() as HttpWebResponse; //校验是否成功跳转到登录成功后的页面 //using (StreamReader sReader = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding("UTF-8"))) //{ // String text = sReader.ReadToEnd(); //} return cookies; } catch (Exception ex) { throw new Exception(ex.StackTrace); } } /// <summary> /// 对SSL/TSL管道建立安全信任关系 /// </summary> public class AcceptAllCertificatePolicy : ICertificatePolicy { public AcceptAllCertificatePolicy() { } public bool CheckValidationResult(ServicePoint sPoint, X509Certificate cert, WebRequest wRequest, int certProb) { // Always accept return true; } } /// <summary> /// 根据获取的cookies进行Get请求 /// </summary> /// <param name="cookie">拿到的Cookies数据</param> /// <param name="url">附带cookies进行跳转的URL</param> /// <returns></returns> static string GetContent(CookieContainer cookie, string url) { string content = string.Empty; //保存cookie检验后获取的数据 HttpWebRequest httpRequest = HttpWebRequest.Create(url) as HttpWebRequest; httpRequest.CookieContainer = cookie; httpRequest.Referer = url; httpRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko"; httpRequest.Accept = "text/html, application/xhtml+xml, */*"; httpRequest.ContentType = "application/x-www-form-urlencoded"; httpRequest.Method = "GET"; HttpWebResponse httpResponse = httpRequest.GetResponse() as HttpWebResponse; using (Stream responsestream = httpResponse.GetResponseStream()) { using (StreamReader sr = new StreamReader(responsestream, System.Text.Encoding.UTF8)) { content = sr.ReadToEnd(); } } return content; }
阅读全文
0 0
- HTTP 附带cookies模拟登录 (RSA加密)
- C# 百度最新模拟登录源码 RSA加密
- Cookies 模拟登录
- RSA加密登录请求
- java web登录RSA加密
- java web登录RSA加密
- http接口RSA加密实例
- 使用httpclient模拟登录(Cookies使用)
- Sina微博模拟登录获取Cookies
- 我的java web登录RSA加密
- 我的java web登录RSA加密
- 我的java web登录RSA加密
- linux 无密码登录 rsa加密原理
- springmvc rsa 前后台登录密码加密
- Android 登录信息进行RSA加密
- Java安全系列-RSA登录表单加密
- JAVA,模拟HTTP登录
- 模拟Http登录
- DB2锁机制
- 鼠标事件 onmouseenter 和 onmouseover 的区别
- PHP表单中的Get与Post两种提交的方式的区别
- c#程序运行时,不弹出DOS窗口,但窗体执行
- iOS导出ipa包时四个选项的意义
- HTTP 附带cookies模拟登录 (RSA加密)
- TensorFlow学习---tf.nn.softmax_cross_entropy_with_logits的用法
- 如何在eclipse中使用protocolbuf(java编码)
- struts2的值栈存入和获取
- 直方图的反向投影的原理
- caffe 迁移
- 264. Ugly Number II
- Socket再学习——开发板ds18b20获取温度值并上报服务器
- JS 对象