当前位置: 首页 > news >正文

即墨网站建设公司广州百度关键词搜索

即墨网站建设公司,广州百度关键词搜索,柳州 网站推广,做搞笑app好还是做电影网站好本文是高级前端加解密与验签实战的第6篇文章,本系列文章实验靶场为Yakit里自带的Vulinbox靶场,本文讲述的是绕过RSA加密来爆破登录。 分析 这里的代码跟上文的类似,但是加密的公钥是通过请求服务端获取的 http://127.0.0.1:8787/crypto/js/…

本文是高级前端加解密与验签实战的第6篇文章,本系列文章实验靶场为Yakit里自带的Vulinbox靶场,本文讲述的是绕过RSA加密来爆破登录。

分析

这里的代码跟上文的类似,但是加密的公钥是通过请求服务端获取的

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

http://127.0.0.1:8787/crypto/js/rsa/generator

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

由于密钥是服务端生产的,服务端有公私钥信息,所以自然不需要传递公私钥了。

请求格式如下,只有被加密的内容:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

序列+热加载

序列

打开Yakit的Web Fuzzer,点击左侧的序列

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

选择从服务端获取密钥的那个数据包

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

使用数据提取器提取公钥

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

提取结果正常:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

再添加序列:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

先把请求体置空,编写热加载代码

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

热加载

本来之前写的是请求体格式跟上文一样,然后在热加载里请求来获取密钥,缺点也显而易见,每次登录请求都会多出了一个请求公钥的数据包,所以最后选择用Yakit的序列配合热加载标签传参来加密。

由于Yakit热加载标签只能传一个参数,这里感谢Yakit群群友Gun的帮助,给了我一个手动分割参数的函数。

把序列第一个请求提取到的publicKey变量和需要加密的数据传过去,由splitParams分割,然后传参给encrypt进行RSA加密。

序列格式:

{{yak(splitParams|{{p(publicKey)}}|{"username":"admin","password":"admin123","age":"20"})}}

热加载代码:

encrypt = (pemPublic, data) => {data = codec.RSAEncryptWithOAEP(pemPublic /*type: []byte*/, data)~data = codec.EncodeBase64(data)body = f`{"data":"${data}"}`return body
}//分割传过来的参数,每个参数中间以|分隔
splitParams = (params) => {pairs := params.SplitN("|", 2)return encrypt(pairs[0], pairs[1])
}

执行序列,爆破成功,使用序列的好处就是只获取一次公钥即可。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

之前的代码:

弃用代码,就不做解释了。

getPubkey = func(host) {//通过请求动态获取公钥rsp, req = poc.HTTP(f`GET /crypto/js/rsa/generator HTTP/1.1
Host: ${host}`)~body = poc.GetHTTPPacketBody(rsp) // 响应体params = json.loads(body)publicKey = str.ReplaceAll(params.publicKey, r"\n", "\n")println(publicKey)return publicKey
}encryptData = (packet) => {body = poc.GetHTTPPacketBody(packet)host = poc.GetHTTPPacketHeader(packet, "Host")pemBytes = getPubkey(host) // 获取公钥println(pemBytes)data = codec.RSAEncryptWithOAEP(pemBytes /*type: []byte*/, body)~data = codec.EncodeBase64(data)body = f`{"data":"${data}"}`return string(poc.ReplaceBody(packet, body, false))
}//发送到服务端修改数据包
// beforeRequest = func(req){
//     return encryptData(req)
// }//调试用
packet = <<<TEXT
POST /crypto/js/rsa/fromserver HTTP/1.1
Host: 127.0.0.1:8787
Content-Type: application/json
Content-Length: 179{"username":"admin","password":"123456","age":"20"}
TEXT
result = (encryptData(packet))
print(result)
http://www.tj-hxxt.cn/news/47272.html

相关文章:

  • 网站ip查询如何制作网页链接教程
  • wordpress网站文件管理google推广工具
  • 腾讯建设网站视频视频下载广州aso优化公司 有限公司
  • 自己怎么来建设网站网站排名系统
  • 国外做彩票网站客服seo怎么提升关键词的排名
  • 网络基础知识大全抖音seo代理
  • 网站建设与运营的论文的范本手机百度高级搜索入口在哪里
  • 贵州网络推广咨询网络seo是什么意思
  • 做手机网站用什么软件sem是什么意思啊
  • wordpress谷歌搜索链接权重被劫持东莞公司seo优化
  • 白羊女做网站怎样留别人电话在广告上
  • 小程序网站开发运行合同疫情最新数据消息地图
  • 如何利用分类信息网站做推广抖音搜索排名优化
  • 济南专业做网站的公司百度广告费用
  • 贵阳网站建设公司哪家好免费搭建网站的软件
  • 政府网站集约化建设思路研究企业营销策划包括哪些内容
  • php免费空间申请学校seo推广培训班
  • 怎么做网站移动端seo搜索优化
  • 视频类网站开发经验数字营销软件
  • 易雅达网站建设公司如何设计网站步骤
  • 重庆网站建设只选承越网络推广技巧
  • 日本做a的图片视频在线观看网站网上seo研究
  • 网站制作框架网站到首页排名
  • 无极商城网站建设网店推广方案
  • 信用卡网站模板搜索引擎论文3000字
  • wordpress+博客+简书如何做网站推广优化
  • 网站建设行业数据百度投广告怎么收费
  • 想做网站建设网站做优化
  • 电商平台项目商业计划书官网seo哪家公司好
  • aws wordpress 站群快速建站教程