这是CC链分析的第二篇文章,我想按着common-collections的版本顺序来介绍,所以顺序为cc1、3、5、6、7(common-collections3.1),cc2、4(common-collections4)。打开YsoSerialpayloadsCommonsCollections3源码:publicObjectgetObject(finalStringcommand)throwsException{ ObjecttemplatesImpl=Gadgets.createTemplatesImpl(command); //inertchainforsetup finalTr
0x00前言在前面的cc链的利用被提出利用的时候,当时就出现了两个分支版本分别修复了漏洞就是我们所熟知的commons-collections4,然后就有了这条cc链4的利用0x01分析我们看一下这两个包有什么区别,这是两个依赖导入org.apache.commonscommons-collections44.0还是导入嘛然后去ys看一下利用链子吧学会自己分析从这里就可以知道它是用InstantiateTransformet,就是用的那个类加载机制去利用这个链子还是细致的跟一下这个链子,就是简单调试实在优先队列的那个类里面PriorityQueue调用了下去的,然后在它的readObject方
0x00前言在前面的cc链的利用被提出利用的时候,当时就出现了两个分支版本分别修复了漏洞就是我们所熟知的commons-collections4,然后就有了这条cc链4的利用0x01分析我们看一下这两个包有什么区别,这是两个依赖导入org.apache.commonscommons-collections44.0还是导入嘛然后去ys看一下利用链子吧学会自己分析从这里就可以知道它是用InstantiateTransformet,就是用的那个类加载机制去利用这个链子还是细致的跟一下这个链子,就是简单调试实在优先队列的那个类里面PriorityQueue调用了下去的,然后在它的readObject方
摘要:近日,华为云GaussDB企业级分布式数据库内核正式通过了全球知名独立认证机构欧洲SGSBrightsight实验室的安全评估,获得全球权威信息技术安全性评估标准CCEAL4+级别认证。本文分享自华为云社区《中国首个,我们拿下了!业界最高级别!华为云GaussDB数据库荣获国际CCEAL4+级别认证》,作者:GaussDB数据库。2022年8月31日,华为云GaussDB企业级分布式数据库内核正式通过了全球知名独立认证机构欧洲SGSBrightsight实验室的安全评估,获得全球权威信息技术安全性评估标准CCEAL4+级别认证!这是中国首个且唯一获得国际CC EAL4+级别认证的数据库产
摘要:近日,华为云GaussDB企业级分布式数据库内核正式通过了全球知名独立认证机构欧洲SGSBrightsight实验室的安全评估,获得全球权威信息技术安全性评估标准CCEAL4+级别认证。本文分享自华为云社区《中国首个,我们拿下了!业界最高级别!华为云GaussDB数据库荣获国际CCEAL4+级别认证》,作者:GaussDB数据库。2022年8月31日,华为云GaussDB企业级分布式数据库内核正式通过了全球知名独立认证机构欧洲SGSBrightsight实验室的安全评估,获得全球权威信息技术安全性评估标准CCEAL4+级别认证!这是中国首个且唯一获得国际CC EAL4+级别认证的数据库产
MySQL异常sql_mode=only_full_group_by原因:在MySQL5.7后MySQL默认开启了SQL_MODE严格模式,对数据进行严格校验。会报sql_mode=only_full_group_by错误说明写的SQL语句不严谨,对于groupby聚合操作,select中的列只能是出现在groupby中的列,使用聚合函数除外,如max()、min()等如以下例子会报错:selectid,no,uidfromuser_ordergroupbyuid; 改成下面的SQL则不报错:selectuidfromuser_ordergroupbyuid; 解决这个问题可以有三个方法:方
MySQL异常sql_mode=only_full_group_by原因:在MySQL5.7后MySQL默认开启了SQL_MODE严格模式,对数据进行严格校验。会报sql_mode=only_full_group_by错误说明写的SQL语句不严谨,对于groupby聚合操作,select中的列只能是出现在groupby中的列,使用聚合函数除外,如max()、min()等如以下例子会报错:selectid,no,uidfromuser_ordergroupbyuid; 改成下面的SQL则不报错:selectuidfromuser_ordergroupbyuid; 解决这个问题可以有三个方法:方
在CC1和CC6中,我们最终弹计算器都是通过Runtime.exec进行调用,从CC3我们要介绍一种不通过Runtime来弹计算器的方法,也就是Java中常提到的动态类加载,动态类加载可以让我们通过一个路径来加载一个恶意类,如果这个恶意类在静态代码块或构造代码块中写入了恶意方法,那么我们就可以通过找一条链子来初始化这个类(一般在进行实例化时会对类进行初始化),从而达到代码块中的代码执行。ClassLoader中的defineClass最终实现了类的动态加载(后面还有一些过程但已经是依靠c来实现的了),在ClassLoader中可以看到一堆defineClass,我们查找用法,看一下哪个defi
在CC1和CC6中,我们最终弹计算器都是通过Runtime.exec进行调用,从CC3我们要介绍一种不通过Runtime来弹计算器的方法,也就是Java中常提到的动态类加载,动态类加载可以让我们通过一个路径来加载一个恶意类,如果这个恶意类在静态代码块或构造代码块中写入了恶意方法,那么我们就可以通过找一条链子来初始化这个类(一般在进行实例化时会对类进行初始化),从而达到代码块中的代码执行。ClassLoader中的defineClass最终实现了类的动态加载(后面还有一些过程但已经是依靠c来实现的了),在ClassLoader中可以看到一堆defineClass,我们查找用法,看一下哪个defi
Ubuntu系统报错:Thesystemisrunninginlow-graphicsmode我遇到过两次这种请况,这次解决了。很nice!在csdn上搜到的大部分操作是:鼠标进入系统使用快捷键Ctrl+Alt+F1进入用户输入密码然后按照以下代码进行cd/etc/X11sudocpxorg.conf.failsafexorg.confsudoreboot我用这个办法解决了:系统在低图形模式下运行(可以先按ctrl+alt+F1进入终端)解决方法如下:1.sudoapt-getupdate2.在终端上运行sudoapt-get-dinstall–reinstallgdm(这里-reinstal