首页 > 其他分享 >小迪安全课程笔记-2024-二十四-

小迪安全课程笔记-2024-二十四-

时间:2024-09-29 15:16:16浏览次数:9  
标签:那个 这个 java 小迪 一下 2024 漏洞 二十四 这里

小迪安全课程笔记 2024(二十四)

P65:第66天:Java安全&SPEL表达式&SSTI模版注入&XXE&JDBC&MyBatis注入 - 逆风微笑的代码狗 - BV1Mx4y1q7Ny

没有挂机上课了啊,今天讲一下这个60由天啊,这个java安全,这个java安全的这一个系列的课程呢,大概,五六次直播吧对吧,嗯前面因为这些漏洞呢有些是讲过的啊,你像一些什么蛇口租这些东西呢。

说白了无非就是说看下这个java里面,有点有哪些不同,它的利用方法呢都差不多的,那没什么讲头七啊,前期的这个pp里面的讲的这个SQL注入,已经讲过很多了,原理啊,包括他的什么利用啊,都是通用的。

无非就是说在这个不同语言中啊,这个漏洞是怎么产生的啊,有哪些差异啊,利用和原理的都一样,所以后续理由呢我们是不再讲讲的了,就是说他这个漏洞在不同语言中是怎么产生的,这个是关键啊。

除了这个之外呢也没其他的,另外像这个还有一些特点性的漏洞,就比如说像pp里面的一些不存在的,一些漏洞是吧,像这个我今天说的这个什么SPL,E2表达式啊,这个东西呢在PPT里面是没有的。

这个呢是它特有的东西,那个SPEL呢其实就是那个SPINPUT,然后下面那个表达式,它其实就是类似于pp里面那个代码执行漏洞,无非就是说SPL呢是这个是ping铺的框架,上面的一个特点,里面呢。

还有网上还有什么OGOGNL,对不对,还有几个啊,都是不同框架的啊,没有什么太大的一些差异,但是我们商单是什SPEL,像什么OGNL啊,对不对,还有JSTL啊,像这个呢我们就不删了。

你不用问为什么不删啊,不删的原因就是淘汰了那个JASEL啊,GL呢那是以前那个JSP的时候是吧,后面那个OGL呢是那个SSTR那个框架里面,这个SPL呢是我们这个SPINPUT的。

我们答案呢会有一些参考文章给大家看啊,好我们来说一下啊,其实在前期的这个安全开发里面呢,我们已经讲了一些了啊,已经讲了一些了,关于他的漏洞原理啊,这个情况只是说现在的我们再次讲的话,是主要是讲他的利用。

就是呢着重的去看他代码的一个差异,你会发现在java这一块的,他这个安全漏洞里面呢,他和这个pp呢有很大的一些差异,就是pp的一些漏洞呢黑盒里面发现的话,大部分都能发现,但是这个java里面先漏洞呢。

如果脱离代码的话啊,你直接在网上面去测呢,它有很多东西不知道怎么测啊,这算很大的差异,好这个呢我们给他说一下啊,那这里呢我们演示的话啊,为了大家更好的去把握这个java里面的,一些常见的安全漏洞。

我们呢给他找了两个系列的一个漏洞,集合的一个环境,一个是这个java c c的,还有一个呢是这个hello java c,这两个呢我从网上的十几个的这个项目里面的,搞了两个,就这两个了。

我觉得界面和学习效果是要更优的,而且他的漏洞的整理面呢也非常高。

先给他看一下,这是两个项目的一个地址啊,这个是一个什么java漏洞平台,结合了一些漏洞代码和安全编码啊,那我看一下结合哪些啊,circle xss r c1反序列化。

SATISPELSSRF目录穿越重定向,CSRF现在目前没有呃,文件上传叉叉一,还有我们之前商的是吧,那个监控的那个系列的是吧,ACTUPL的啊,fast jx啊。

然后这个XS君logo4J的JNDI的,DOS的X喷GJWT的啊,这是它上面的一个集成啊,就这个项目,然后他的这个环境呢采用的是skin boot的一个框架,所以说呢也是符合现在的一个技术潮流。

再来看这个啊,这个呢集成是什么呢,看一下啊,集成哪些漏洞,这个呢,啊他没有写啊,我们等下打开的时候,那边项目好了之后呢,再看一下吧。

然后这两个呢我给大家起先把他启动起来,给他看一下啊。

前期我们把那个安全开发上完之后,像现在这个课,那就非常非常的好理解了,现在这个java这个安全课呢,它的最重要或者说最难点的地方,其实是它的这个虚化这个cc d n的那些东西,包括反射机制。

这才是我们的重点,这两年那是着重讲的,也是我们这个等西进的这个重点,其他漏洞那就是简单过一过就可以,因为其他楼我们基本上啊,PPT里面大部分都利用都是一样的,就是威海呀。

包括那个无非就是说一个在PPT里面写出来的,论文代码,一个呢是用java写的代码上面的有些差异,但是原理和利用的都是一样的,我们把启动一下啊,这两个启动呢哎我怕我如果说这个是吧,现在不把启动起来呢下去。

有些人又不知道咋启动,嘿所以我现在就暂时的给你启动一下啊,这里呢有两个解压包,这是编好的,然后呢两个这个源程序,源程序都是源代码嘛是吧,你写的源代码呃,这里呢要注意啊,如果你不测试SQL注入的话。

你可以直接启动这个解压就可以了啊,如果你要测SQL注入的话,需要把这个里面的一个这个SQL文件呢,这个目录里面是在这里啊,在这里呢这个SQL文件的导入进去,然后呢要这里呢他不是有个这个配置吗。

给大家看一下啊,就这里呢有这个呢账号密码的一个配置,和数据库名,那数据名test,然后root是吧,那1234567的一个密码啊,自己配置一下啊,如何配置啊,我给大家来说一下啊,我先搭建第一个啊。

先搭建这个1。10这个java s e c的啊,如果大家呢先把这个呢他这里有个四个文件,把它拿出来,然后呢启动这个解压,这个已经是给大家,已经是给大家这个打包出来的啊,我怕有些人不会打包把它打包出来。

然后呢我们用这个JAVS哎去运行这个东西啊,这个java环境呢我看一下我现在那个版本啊,这个版本是一个17。0的啊,你最好呢建议大家都用这个1。8,因为这个呢可以用17。0等一下那个环境,那就需要用1。

8了,对最好都是用1。8啊,如果你这个上面装了那个1。8的话,就可以直接调那个全图形的运行卡,我们把启动一下啊,这个启动了啊,然后启动你看他报错了是吧,为什么报错呢,其实就是那个版本的问题呃。

然后这里是他的这个文件啊,然后你看它本身在编译的时候,就是本身编译那个源码,我们看它本身源码里面,那个配置的数据库的那个信息啊,是要和它对应商的啊。

不然的话那就有问题是吧啊,这里呢是123456密码啊,如果说你这里修改了,你就重新再编译啊,最好是和他保持一致,我这编译的是账号等于root,密码为1256,然后你不编译的话。

你就是吧把这个密码设置和他一样啊,如果说你这里要改这个密码的话,密码呢不对应商的话,那你要重新编译时间啊,呃数据库名字叫java c c好。

那么现在呢我们就按照这个配置啊,用就用pp这个自带的这个MYSQL的那个啊,用这个MYSQL的这个东西来操作啊,然后MYSQL这个是吧,然后点一下啊,我们连接一下数据库吧,配置一下啊。

先把环境启动一下啊,好那这里呢在新建是吧,那新建数据库,然后名字就叫做java s e c了,那表示对应上啊,确定嗯,这里呢在是吧,又简单啥啊,运行SQL文件啊,就把刚才那个拿出来先去刷新一下啊。

看一下这里有没有数据了啊,有了那就OK了啊,不用管它了,那么环境好了之后啊。

那我在运行啊,刚才这样直接运行呢,他起不来,因为这个开发环境它是java1。8的,所以我这里呢要换,找到我那个1。8的安装目录啊,工装在低头上,B d a1。8,B目录下面的加号ES1N143。

这个LJL啊,好那么现在呢就用这个1。8呢去运行它啊,刚才数据库也倒了,好现在呢就应该正常了啊,好OK了啊。

那么现在呢我们来打开看一下啊,它的默认端口呢我们可以关注一下啊,但末端口看下这个配置文件里面。

默认端口啊。

8000好,返回一下。

他的路径应该是还有一个路径啊,我看一下那个说明文件里面,看下索命文件,哦搞错了啊,这个你们的搞错了啊,他是这个包,我刚才用这个包上面去了,你说这不尴尬了。

搞错了啊,我以为这两个是一起的,是这个压缩包和这个是一起的。

这个和这个一起的,难怪,那要重新运行这个啊,这个这个G啊。

好环启动拔线条狗啊,可以看到刷新一下好可以了啊。

呃这个呢账号密码呢你可以看他说明文件有啊,如果不知道的话,你也可以直接在数据库里面看也是OK的啊,数据库账号里面记录了啊,账密码就是这个艾德米安的密啊,那个环境上面那也有也有啊。

你可以看一下这里面他这里有啊。

这个账号密码是数据库是默认设置的这个,然后环境密码应该是艾米的密。

我们也看一下刚才那个数据库啊。

那还是米还米好,没问题,登录下啊,好这里报了个错误啊,我怀疑应该是数据库的版本问题,我开个这个数据库吧,不用这个了啊,开这个我下了两个版本,这个5。7版本,有七版本应该就可以了,要注意5。

7版本这个呢要和它对应上的,这是他创建的,有这两个啊,也要创建好啊,换了个版本重新来看一下好,现在正常了,这个呢就是一个那个java的一个那个啊,各种漏洞的一个环境啊,呃这个常规漏洞做完之后呢。

这边还有个其他路,其他漏洞一点啊,反虚化的造成反虚化的三个函数面,讲RIF的fast jackson啊,jx jack six啊,需要XS反序化logo4j has been input的两个。

然后这是几个,那你比如四个注入里面JDBC的啊,买个东西都有是吧,就说常见的一些漏洞啊,比如SP1,还有这个其他漏洞,这里啊是吧,都有它非常舒服啊,还是说把一些整理的啊,就是我们其实前面讲过了。

安全开发里面的那个一常见漏洞的是吧,简单demo,但他把提成到这个页面中了,然后比较好的呢,就是呢像目前的这些java的一些是吧,几个组件的高危漏洞啊,这个都是常见的。

是不是都有好,这是这个啊,我们再把哪一个呢给大家说一下啊。

再把那个。

再把哪个呢也说一下,就这个嘛是吧,还有这个嘛,对不对,启动一下啊,也是微信到哎这个什么鬼啊,先来的这个目录吧。

用这个用这个文件启动方法,然后是这个启动端口不要搞占用了啊,那个是8000,那这个看一下他端口是多少,再看看端口是多少啊,这个应该是看项目的这个情况啊。

是这个里面的,看他的一个端口默认端口是多少,看配置里面的啊。

四个八好好。

这里呢注意一下啊,这两个环境呢都是两个啊,我们着重呢都要看一下。

你格有各的好处啊,换个浏览器打开,不要用同一个浏览器啊。

同一个浏览器的话,他就会一直会登除登录的啊,换另外一个联系账号,密码呢是多少,我会看一下啊,他这个介绍,阿米阿米啊啊都是阿德米安德米啊,没什么说的,啊这是这个啊,那这个呢那几个漏洞。

那逐渐漏洞呢也是刚才那几个其他漏洞来,对不对啊,JNDI注入他这个和刚才那个有什么差异呢,我给大家说一下啊,界面上面的话,第一个呢要比第二个美观些,做的好看一些啊,分类也更清楚一些。

第二个比第一个要好哪些呢,有些显微的差异,比如这里的尖底啊,它有这个没有是吧,然后呢这边有的呢可能那边就少一些,你比如说这个这个RC1的好吧,就拿这个RC1来说一下来源代码进行,他这里呢写了五个是吧。

五个造成的,然后这边呢你看他的这个RCE,他写了一个两个三个四个诶,他也写五个啊,他不同的一个方式呃,有一些呢就可能多一些,少一些啊,就少一两个,但是无关紧要,我们用这个呢,为什么每一关我们还用它呢。

是这个啊这个它的好处就是什么呢,它一目了然,什么叫一目了然呢,你比如说啊我们打开这个啊四个珠子这里啊,我们看一下他这个代码呢,就是漏洞代码给你写出来,然后呢后面呢再给你看到一个过滤性代码。

就是安全的写法,唉然后呢你看这个啊预编译是怎么产生的啊,这边是怎么这个漏洞是怎么产生的,就是有个对比啊,能够可以直观看到啊,虽然说你也可以怎么样。

你也可以用这个IDEA啊是吧,打开这个项目在里面看那个代码是吧。

你也可以在这个里面的去看那个代码,对不对,如果打开那个项目对不对。

你可以用这个id呢去打开这个相关代码,看是不是。

但是呢他这上面看的更直观一些啊,好这是这两个啊有些互补,所以这两个我都介绍一下,另外主要还有一些漏洞,它不存在啊,所以这两个互补了啊,基本上啊,这两个就是把java里面那些常见的漏洞都涵盖了。

然后他们的这个是基础的入门的,java安全终端入门就是要学那个反射,就是构造POC那些东西,高端的就要分析到那个粘的一些情况了,这是我们循行渐进学加完全的一个过程,先了解它的常见安全漏洞。

把一些常见安全漏洞搞清楚,帮助我们后期如果说分析这个java源码的时候,能够一目了然,看一下这个写法上面有没有安全问题,会造成哪些安全问题,这是第一点,第二点呢,就是马上就是对这个漏洞在利用的时候。

我们会发现某些漏洞在利用的时候呢,有些过滤能不能绕过它啊,这个就是要会用到java的反射机制,在前期的这个安全开发里面,我们有简单接触过安全的那个反射机制的,一些常见代码写法。

那么后面呢就要是要用到那个支点呢,来去构造一些绕过的反射,这第二点啊,然后呢把这个搞完之后呢,就着重学习一下java的这个最关注的一个点,就是这个反需要漏洞,反旋漏洞就是那个什么cc连那些东西哎。

把那个搞完之后呢,基本上啊,这就是目前上面在java上面比较多的东西,然后呢牵插到内存码这些技术,还有些各方面的技术啊,基本上现在目前啊java这一块呢,不管是面试还是这个是吧。

这个工作中呢就是用到这些技术,这是他整体的个大概的一个框架,我们呢也是按照这个思路给他进行,前期呢先把安全开发给他讲一下,有个简单的认知,再把这个漏洞呢给他玩一遍,最后呢再来说一下后面的好。

这个呢说到这里啊,刚才呢有人提到了一句话,说让我去商一下这个什么鬼,C o i s,我说句实在话啊,这个东西怎么说呢,没什么鸟用,你知道吧,你包括这个什么COS,什么UR,从丁香。

什么SSRF这些漏洞都是属于叫什么呢,没办法啊,你就是你其他漏洞没有,他揪这个漏洞,哎你就玩一下,那有这下面其他漏洞,谁玩这种东西呢,这个COS是个资源共享,对不对,不管说java里面的P1P啊。

各种语言也有这个漏洞,再个就是个什么跨域资源共享的东西,好多仙子没啥意义啊,说实在话,看上去比较高端,听都没听说过,没听说过,要么就是难,要么就是没什么用,好我们不说这废话,拿底要伤的话。

后面课程我会讲的啊,就像后面那个什么,你可以看一下嘛,我这里写了嘛,那就删了之后,你看这个上来了,来什么cf o n s,这是重定向,既是open对调什么这个东西,这都是些冷门漏洞,你不上呢。

他说你不灰啊,不脏了,一别人一上都是靠别人高端有啥用呢,商了之后你会发现你妈的听了跟没听一样,好我们不说这废话了啊,我们直接讲今天几个这个漏洞啊。

现在说这个SQL组SQL注入,如果前期有学过我那个安全开发的那个科的话,那基本上这个东西我只要给他点一下,看一下这个情况大家就会用了,或者说知道怎么看这个代码有没有设置了。

就从java里面去分析这个写法没有安全问题,如果说没有学,我看一下啊,你别别说我不说,我骗你对吧,那这是我们前讲安全开发的一些项目。

其中呢就讲过这东西好,我们来看一下啊,这个里面有哪几种情况的呢,他说第一种情况叫语句拼接,这是代码啊,这是代码代码,这里呢他这个接收值呢a id呢是这样写,是这样写的,对不对,我们可以这是这个项目。

我们可以看这个项目里面的也是一样的道理。

他这里没有写啊,我们还是看这个吧,这个有对应代码啊,那我们可以打开这个代码给他看一下,circle CD b c的,啊这是他语句啊,这语句这样写的啊,这个id值呢他是这个上面参吧,参数传递啊。

嗯执行这里呢用加号拼接的,这是首要出现的问题,然后他安全写法是什么,他说安全写法是这样写,加上一些过滤,这种过滤呢只是说过滤关键词,就是过滤这呢输入关键字,这个好理解吧,黑名单过滤,还有一种呢。

就是说来你看啊,如果说他用到预编译,但是用预编译呢,你可以看到他说如果你已经定义了SQL语句,是这么一个情况的话啊,是这个拼接的话,那么即使现在呢你进行了预编译,这个预编译呢也无用。

就算你可以看到啊,这个语音定义好了,他这里呢就用这个预编译对象呢,给它进行预编译,但是这里还是会注入,还是存在注入啊,这个代码呢也是在这里呢有写了,就可以往下面翻,等一下啊,这个是哪个。

他是不是找错了代码,他有两个项目啊,circle注入,死在,这里,嗯这个呢要把它写好之后啊,这是在第二个VUR2的请求地址啊,这个采用于编译。

但同同样还用还用这个存储,它的安全写法是什么呢,就这种的问号占位符栽进与变异,这就是安全的,那么这几个案例给大家看,大家就知道了啊,一种情况就是说直接拼接没有预编译,那么漏洞直接产生。

还有情况就是说你运用到与编译,但是你SQL语句的没有按照这种写法去写,也会产生规矩写法,就是写上问号的占位符,在应用编译,这个呢就是安全的,我们可以试验一下看,对不对啊,比如说呢run运行它。

你看它注入的语句都帮你写上去了,你也不用去管这个主语句呢,我们都说过,讲过这有啥说的,那你看地址呢,请求SQL j EBC v u r e i id等于一,后面加上这个报错组语句嘛,对不对的。

请求获取look host,把v user呢进行一个更改,改成VC就是查看这个什么版本的,可是,改了怎么没反应呢,你是不是逗比啊。

他应该是固定死了,这个地方改了没反应。

家人没反应啊,我看这边吧,这真是尴尬了啊,来看这边吧,改了没反应,你是不是不尴尬,来正面请求录个host对吧,那请求地址呢改一下,嗯这个地方也可以啊,那这个可以那一样的啊,没什么太大差异。

这什么整形注入这东西,无非就是说单引号的问题,这也没什么说的,对不对,然后时间布尔诸路已经讲过了是吧。

为什么这个时间注拉布尔珠,就是那个没有回旋的那个事情,那么在这个java里面呢也是这么个情况。

就是看那个结果有没有显示是吧,采用不同数据,就是你要知道啊,这个JD比C呢啊,这种去呃,java里面JDBC的这个数据库的一个操作是吧。

两种漏洞产生在哪里啊,还有一个就是利用JDBC的temple事件,就是这个模板事件也是按照这种拼接写法,也会造成这个错误,所以呢他给了三种写法啊,一个就是拼接啊,用于编译,但是呢还是有漏洞。

还有一种呢就是安全写法呢,就是问号在于编译安全写法,还有一种呢就是我们采用这个什么,那个另外一种模式。

就是我们看到这种模式去写啊,他也有漏洞,规矩写法呢都跟你在后面都写清楚了,是吧,所以说这个呢就是用JD比C实现java里面啊。

实现这个注入的一个可能,我们再来给他说一下GDPC这个知识点的。

前期已经删过了啊,就是说java里面呢如果说对数据库操作的话,有JDBC,然后呢像后面用的最多的,但是没BAB,还有一个是那个H开头的,但是H开头的需要用的少,用的最多的就是这两个G力比C和这个。

那么JDBC里面啊,如何判定有没有SQL注入漏洞,就是看SQL语句的定义的写法要怎么才是安全的,给大家简单写一下啊,他的安全写法写到这个笔记上面去,就是啊占位符,占位符啊,这个问号对不对,然后呢。

预编译,这两个呢才是正确的写法啊,其他的呢都不行,他的这个攻击力用呢,我们可以直接在上面可以看到啊,这个也没什么说的,因为这个呢就刚才说的一样,就是你正常的这个进注入就完事了啊,也没有什么其他的命令。

因为这个在这个猪里面呢已经讲了很多次了,已经讲了很多次了啊,我们这个后面的利用那就不说了啊是吧,这个什么蛮族啊,这些东西都讲过的啊,对着敲着起,对不对,还有就是这个my baby,你这个my baby。

那这个呢我们来看一下啊,马上就会有安利用到这个my baby,我们来看mybis my BIS里面东西啊,他是怎么造成的啊,上面是这个bu的环境,我们看这个版本环境,那个买BB他做了一种是old by。

一种是like,就是搜索框就叫like like注入,还有个叫IN注入,这里没有写,我们还是看这边的吧,这边好一点的,like like主路和old by和in注入,三个like克呢称之为模糊注入。

就是我们用来匹配数据库的时候,就常规语句这样去写,like就是匹配后面的关键字符,比如说像搜索框里面,搜索仪呢会将12345的新闻显示like,那就是匹配的意思,那么为什么会招州路。

my baby又是什么东西啊,前期介绍过JDBC呢,是这个java里面的一个数据库驱动,那么这个my baby呢也是一个,就说对方,如果说要对java呢进行数据库的操作的时候,可以使用JDBC来实现。

也可以使用MYBAB,那么JDBC就是按照刚才的那个操作方式和,判断猪的方法,就是看他的写法,是不是按照我们这个安全写法去写,对不对,那么如果是买baby死的话。

那么my babs的写法的话就是这种写法,然后呢它里面有两个符号,一个是井号,一个是这个美元符号,井号呢是采用预编译写法,美元符号那就是直接拼接,那么也就是说如果用到美元符号的话。

就会和刚才的这个什么一模一样,会和刚才这个JDBC那个写法一模一样,能理解吗,就说用到井号就是采用预编译,那么美元符号呢就是拼接,刚才说过啊,这个上面JD比C造成漏洞,原因就是用到了这个拼接。

那么拼接的其实就没有符号,那么为什么MYBATIS会缠租呢,直接用井号不就不灰了吗,是这样的啊,在order by的时候啊,由于如果说你要使用井号的话,那么它就会呢造成错误。

就是order by是我们的排序的SQL语句,如果你用用井号在这里进行这个预编译的话,那么这个语句呢会出问题,所以很多安全开发者呢,会用这个美元符号来解决这个事情,但是用到美元符号呢。

就是一个拼接SQL就会造成注入,所以这是他造成租的原因,那么大家可能会问了,那我能不能解决这种事情呢,能解决解决的方案就是先用美元符号,后面再进行过滤,这样子那才行,如果说你只用过美元符号。

没有在外面过滤的话,那么同样注入也会产生,这是old by,用by壳的时候也是一样道理,如果呢你直接使用这个井号,采用预编译的时候,那么也会报错,所以开发了有土方面又会将它改成美元符号。

那么那从而又造成阻误,那么这个i in呢也是这么个意思,其实就是说这三个都是SQL语句里面,用来去筛选数据,用来对数据库语句进行操作的时候,如果你在用到这个order by的时候。

用AABSN来进行数据库查询,这个时候呢由于用到井号会报错,所以你不得不用美元符号,用到美元符号,你后期呢还没有过滤,那就会造成这个错误,造成这个注入,原因很简单,和那个JDBC是一模一样的。

统统都是拼接色口,能理解吗。

那么现在呢我们可以看一下这个具体的代码端,来看一下啊,CD比C大。

这两个文件也不知道看哪个,那这个是old by的,你看他的写法啊呢,额这里呢你没有看到SQL语句,它的SL语句是定义哪里呢,一般是定义到这个还是放到一个那个,一般都是放那个XML文件里面,就是个刀刀层。

这里面或者是另外一个地方,我看一下是不是在个刀层里面好,果然是在这里,你看到只要定义到这里了,dot啊,INJE点dot,就是这类定义的这个地方来定义的语句,你看啊这里用load by是吧。

这里有个这个的叫file id啊,这个呢是结束的参数是吧,然后你看他这个这期写的是什么啊,美元符号嘛是吧,然后你看这个呢是也美元符号啊,啊这个呢也是么,原符号对不对,就说正常的写法,你看他写的安全写法。

那就是写井号,写井号啊,写井号,那这里写进号安全语法呢就是后面的写井号,对于那个数据呢写井号,所以说他没有什么太大注意的啊,就是这个井号和边缘符号的差异,额你可以看这个代码本身啊,可以看一下啊。

他这里呢在在执行的时候,那他引用的库呢也是这个什么,这个my babies的库对吧,然后呢进行的后续操作,然后面再进行注入代码端呢也是很清楚啊,大家可以看到这里他全部是用这个免符号。

你也不要说为什么不用这个井号啊,用井号就是会直接报错,有些开发者呢在写这个代码的时候,他图方便就直接用面符号了,那用免号的就积极了。

所以你看啊它注入是什么租呢,由于这个是NIKE注入,所以他的租语呢是怎么写的呢,因为耐克那就是SQL语句的前面有个什么百分号,就是通配符加一个什么字符串单引号并屏蔽掉,后面再加闭合。

所以他语句是大概是这么个情况啊,获取查询这个数据库名单的东西,嗯对对,他主语大概就这么个情况,显示数据库明啊,用户名和版本,对不对,选这里这个写法我就不说了啊,这完全就是SQL注入的利用。

前期伤过太多次嗯,主要是讲怎么区分好,再来看oto by对吧,auto by呢也这么个情况啊,就这么处理,也没有什么其他的,嗯6ROOS报错注入,是吧,他至于使用什么猪呢,这个都无所谓啊,用哪个猪都行。

主要是看他有没有回血啊,有回血呢就用报错啊,没有回血就是延迟和什么盲注啊,还有那个SQL语句有点不太一样啊。

这些东西我不需要讲吧,应该是能够明白的啊,就是为什么这个SQL语句这样写。

为什么这样注入,这不需要我讲的吧,啊,这是前期我们已经给大家在讲,P1P那个四个猪的时候呢,说过很多次了,这个猪呢和脚本语言是没有任何关系的,他的利用那是和数据库类型有关,然后呢。

再就是和这个回旋不回险的这个事情有关啊,忙着的就是解决回旋和不回险的问题,这前期已经商过了啊,所以不要说这种问题呢叫温了啊,我们上了java安全,就以终点java的一些代码的为准啊。

这种SQL注入的理由那就不是我们操心的好加了,把这个讲出来,有人就问到是不是,那如何在这个实战中去发现这个SQL注入呢,首先大家明白一下啊,实战中发现SQL注入,你觉得这个java和pp有没有区别啊。

你觉得啊,如果要去发现这个网站也没注入点的话,这个是网站是java或者是网是pp,你觉得你发现社会植入的那个黑盒里面,去发现它,你觉得有没有区别,就算按照测试漏洞那个测试方法去测,它的话也没有区别。

没有区别对吧,的确是没有区别,都是从参数上面去更改,然后去测就没什么太大区别。

那么从这个代码上面呢是有区别。

代码上面有什么区别呢,pp里面是没有这些什么鬼东西的,PPP里面大部分都黑名单过滤,再是那些他虽然有一语编译。

但很少见,但java里面其实我们就是看写法怎么去看,很简单的道理,你看SQL语句,这个执行是用的JDBC还是用的my babies,如果是其中的一种,你再看他的写法是吧。

这个GDPC的安全解法是这样写的,如果他不是按照这个写的,那恭喜你能找到这个my babies也是一样,看看有没有old by和NIKE和英,有这三个,再看这里是不是用的啊。

其实就直接看是不是美元符号和井井号,井号就直接把它不看了,美元符号是吧,就看他是不是在这三个里面那摘,那恭喜你了啊。

好那么答案回文有没有安妮呢,有啊,呃黑盒案例我就不跟他说了,我们搞一个这个白盒案例给他看一下啊。

白案例呢先给他打一点啊,用网上那个cm s一个java开发的也是SPINT啊,一个MVC的框架的一个java源码呃,在后面代码神经里有很多诸如此类的,包括什么罗伊的一些分析啊,我们都当时后面会讲啊。

呃像这个什么鬼呃,java的一些源码我们给看一下来。

我们先给答案起来,我怕有些人搭建不起来了,我这里呢再给他重新搭建一遍啊,你再答不了,那就不是我的问题了啊,那把源码解出来,这是一个以前的一个网校的一个系统,上期有做过代码分析。

这节课呢我们后面代码审计的案例,那就不用它来讲,用更高端的一些事情去讲,这个源码启动之后啊,我们挨id1把打进去啊,其实他这里呢也有教程教你怎么搞,但是有些教程上面有些差异呢。

有些人他遇到问题又不会解决,所以我这里那没办法啊,还是给大家老老实实的是吧,来一遍,如果说你下去之后还是启动不起来,那打开之后他问你问是1D plus项目还是没有,你就选这个买法项目啊。

确定新人项目新窗口啊。

此窗口存档的都无所谓,打开之后呢啊这是他的情况,然后如何去用它呢,它这里有使用教程是吧,教你怎么把启动起来,这里有啊,我们呢给大家说一下这个具体步骤就可以了,其他的呢基本都没有啥用啊,打开之后啊。

首先第一步呢,就是修改这里的数据库配置信息啊,就打开这个地方呃,这里有个数据库配置信息,打开这个地方,然后这里有个账号JDBC,它是用JDBC啊去连接它是吧,连接它,然后呢这里是数据库名啊。

账号密码写上去不是123456啊,写好啊,这里保存好是对的,写好之后呢,这里有个路径网站的地址,什么1782端口啊,我们这里呢根据自己需要,我们比如说我改成这个,是吧,9001好吧啊,9000吧。

9000端口啊,改了个9000端口,对不对,把它保存好啊,这是等下打开的地址好,这里修改完之后呢,接下来就是要对这个数据库能进行操作了,他在呢给到了一个这个资源文件里面,然给了一个SQL文件。

你看这里有SQL,就导入到这个本地的这个环境里面去啊,他这里呢也给你说了,说环境的一些这个当前的这个什么版本,这些东西就是说用的是什么版本,看环境的情况啊,我们这里呢就是它自带的这个版本就可以了啊。

然后也很奇怪啊,这个你看啊我们就直接执行啊,直接呢执行这个SQL文件,选择那个目录,诶搞错了,在这里是执行营好进行之后刷新一下啊。

那自动创建这个啦啦,但是我告诉你啊,这三个这这几个是不行的啊,我也不知道什么情况,他妈的你在这个数据库上面,那这个版本上面那执行只有这么几个,这几个呢等下就打不开网站,就会有差异,所以呢我后面为什么说。

在这里装了另外一个版本,我也不知道啥情况,换了个版本就好了,换了个版本重新启动这个东西啊,咱俩连接好这个版本的数据库啊,啊下面这个连线,刚才三分那个是那个5。7版本的啊,这个是这个5。5版本。

你看这里啊,我们重新来把这个先删掉,重新来执行这个SQL文件啊,它会自动创建那个文件,然后我们再执行,刷新一下打开表,那你看他就多了,他妈的我完全不知道什么情况,我怀疑是这个SL语句是个文件。

和这个数据库版没有关系,那你看看这就对了啊,这上面的库就对了啊,不对的话,等下打开的网站有些东西显示不出来的,都不好测的啊。

好这个打印好了啊,这个连接配置也配了,接下来怎么办呢,接下来就直接是吧,点击这个地方啊,编辑环境啊,你这里呢可以用maven啊去启动,也可以用这个tm cut,用tm cut啊。

然后我说我本地的tom cut这个版本啊,自己呢去配置一下这个版本目录结构啊,自己下个TM卡的那个版本,我下了990版本,然后这里呢端口和它对应上啊,因为刚才的配置是这个什么9000啊。

等下9000把它对应上啊,这里的改一下,写好之后啊,然后这有个叫修复啊,点击这个呢,只要修复一下,或在这里面添加了弓箭啊,这里面好选这个确定好,这里有个路径嘛是吧,默认就是说它会以这个路径的为准。

由于我这边配置的是什么配置,是根路径,所以我把它去掉,点确定确定,因为这里那是个没有路径嘛,如果说你刚才那个不改的话,你就在这里加了个路径,知道吧,这没什么说的啊,我就我就我就我就不改了,是吧好。

那现在呢就配置完了啊,然后配置完之后呢,其中呢啊可能还会有个问题,有个什么问题,我现在起运起来啊,啊他就报这个提示是吧,来报这个错误是什么原因呢,这是java版本问题啊,我们就把项目这里的改一下啊。

呃这个项目这里呢有个这个项目结构啊,点一下啦,这个默认17版本我选这个吧,1。8版本这个JDK,所以说为什么1。8好用啊,这1。8呢时间太长,好多项目都是1。8的,好再用这个版本是吧。

然后重新这个运行啊,啊他编译,当然了,你可以把这个WAR包呢放到这个tom cut下面去,直接访问也行啊,好现在就开始启动了,他说这个部署弓箭时出错啊,你不管他,你先等他,等他完了之后,我们来访问一下。

一般出桌子后啊啊你注意一下,还可能还要改个地方啊,等下我们说。

好这边我们先返回一下,看你能不能行。

好这里打开之后呢。

唉的确报了错误,这有什么原因呢,啊我告诉大家啊。

可能是刚才呢修改完之后没有这个这个康呃,清除一下啊,先把这个命令输出来,再点一下安装,再重新生成一下那个WAR文件,这个前讲过啊,打包那个jr和那个WAR的那个情况呢,这里安装好之后呢。

你看这个WAR就有了好,我们再重新在这里呢啊,修复一下,选中路径呢,去掉它,确定再来是吧,启动哈,再看一下,嗯怎么又是你妹的部署,部署有问题,这是哪个有错,哪个问题都答都答完了,是抓紧的,好好的。

怎么又出问题了。

我看一下啊,这个索命,英文项目修改地址,修改完之后,更新项目运行,他用的是这个maven里面统统卡的去运行。

重新来一下啊,我重新检查一下刚才那个地方的一个配置啊,我要把搭建好之后呢,那给大家说一个代码审计,给不搭建的打,打下去之后呢,以后测也测不出来,呃当口呢改就加了个完整路径吧,难得改了啊,先把那个去掉吧。

就叫完整路径吧,但是不是这个问题,也不知道,应该也不是这个问题啊,哦这里改一下,127。0。1,加上这个路径机制,求前端后对的确定确定,改完之后明显,能同意下,多点几下啊,清楚和这个,好再来。

我先把这个确定确定好,再启动一下啊,还不行,那我还不知道是哪里出了问题,还哎呀,账号密码都修改了,也没有什么问题,还部署失败,那可能就是其他冲突了,这什么情况。

这。

换个端口试一下啊,可能是这方面要把这边关一下,我等下把这个关一下,看是不是这个两个字问题造成的,我把这两个先关一下啊。

账号密码错误不复杂。

稍等一下,我们重新来分析啊,我这个地址又搞错了,妈的没写上去,Is the boy don t for,我打开这个吧,我打开我那个啊,哎呀我都不完全都不清楚是哪里的啊,看下这个。

还好之前把这个东西打进过一次,这个是之前改好的,已经好,你们遇到问题没有我这个问题啊,这是我哪里看是哪里冲突问题啊,你们对着我下面来是不会出这问题的,我觉得实践我先把这个搞完之后呢。

我们等下搞完之后再看这个情况啊。

对啊,这就正常了,这他妈的不知道什么情况啊,你看这个就正常了。

一模一样的,没有什么改动,我这里呢你看看换了个端口是吧,然后这这些都是一样的,这个里面你看这个地方呢,这个配置这里那也是一样的,可能少了一个什么鬼,斜杠啊,这些东西都有,可能你也不知道是什么鬼哦。

我知道了这个鸟毛密码,我搞错了啊,这个密码是root,你妈的,那我换一下是不是这个情况,把刚才那个打开再看一下,把这个先关掉吧,我刚才再打开,妈了个去,还是不是这个情况啊,来来来试一下,试一下。

你这要是这个情况啊,那就那你妹的就,烦得很啊,看是不是啊,这他妈的还真是。

好好好那行啊,你们也不要说你再遇到什么问题了,给你搞好了好了,这个是那个java写的那个网销的这个系统是吧,然后这是那个什么在线的,那这个是什么漏洞呢,看今天刚刚讲了。

SL注入my baby是和那个CDBC的,我们来观察下,我们这里是怎么看他有没有安全问题啊,首先你这里要看他的哭的引用,那POC的这个XML里面,如果说你要实战车的话,你这里车。

那就肯定是就是我们如果说黑盒黑盒车的话。

那无非就是说点点这几个地方呢在在这里是吧。

就像这样去测它的安全漏洞,对不对,是这样测啊,但这种车呢能不能测出来。

那司机会是不不总关系的,那黑盒车,那如果说是白盒的话,我们这里看啊。

首先呢你要看一下他这里有没有引用这个。

这个我们说的今天两个啊,一个是JDBC,还有个是个买BBS,那JDBC呢它的驱动叫什么名字,前期安全开发我们讲GDP是个买BS的时候,有跟他说过,你直接就看呐,看到这个项目的这个什么引用库。

也可以看这个pom XML,好啊,单位呢也可以看这个地方呢,看这里啊,他是用米粉打包的,你可以看一下,来看这里有没有他引用,就说呢这个MYSQLMYSQL,Csol,java5也。

这这个呢就是个JDBC必带的那个东西啊,就是引用这个东西啊,继续往里面看看有没有单,你看有个ORG来my babies,然后呢看到没,这有啊,就说明他在里面有用到这个my babies,那我猜测的话。

他应该会用到my babies的这个数据操作,就说他呢用数据库操作的时候,应该是用的my babies系,那么常规的是哪三种呢,啊常规的这个写法有哪三种啊,给大家说一下,这三个呢都有安全和漏洞。

一个是JDBC,还有一个是我们的这个什么买babies,还有个是这个HIB1的HIB1呢,这里面有漏洞演示啊,在后面代码审计的时候呢,有生命S能用到这个东西,我会给他讲的啊,现在没用,就大家知道啊。

这是java里面啊常规对数据库操作的三个方法,GDBC的原生态的,还有这个买BBS啊,拿个这个东西啊,用的最多的就是买BAB,那这个项目呢刚好啊他用到的就是什么,这个my babies,对不对好。

那么我们先想想啊,如果我要找他有没有漏洞,我们先从刚才这个知识点这里看呃,Old by like in,我说了安全写法,就是看这个什么美元符号和井号,井号就是安全的,美元符号就是不安全的。

那大家觉得我如果搜搜什么关键字啊,order by的写法的时候是这么一个写法,我们可以关注到刚才那个漏洞源码那里。

咱动员嘛聊聊。

在这里额咋搜索框的注入是这样写的呢,这样写的,然后这个呢是这样写的,还有一个呢是另外一个呢,这里没有看到,就这里呢有这么一个东西是吧,还有个写法在源码中也可以看到。

简单来说,那这里也不用看了啊,那怎么写的啊,那这里有这个代码。

对这是关键字吧。

特征的地方就是SL语句呢,如果这样去写,就是那一刻的这样写的话,就可能是阴的对吧,这样写就可能阴的,那搜搜这个关键字就行了,来搜这个地方来对的吧,还有一种就是这种直接搜这个呢。

这两个呢要相对说更有特殊性一点,那三个了,搜这个搜这个和搜这个为什么搜这三个,能不能明白,我确我先确定他有买BIS数据库啊,用my babies这个哭了,那我怀疑他用到my babies。

那去写这个数据库查询,而刚好如果是有SQL租的话,那应该写法就是这三个开始后面的是变量名字,这无法确定,你可能说我怎么不搜这个井号的,井号是安全性吧,那既然安全了,你还看个屁呀。

那肯定是看这个美元符号的呀,对不对,搜索的语法还是直接hold by的,这种代理是什么in的,那我搜一下给他看一下呗,全局Ctrl shift加F搜什么,先收百分号,美元符号,括号一搜啊,没有收到。

那么继续搜,还有个是这种写法,哎这种写法里面大家看到有的啦,呃然后匹配一下java文件,这里就把这个JSP什么插秒呢,这里你也有的,你看看java里面没有啊,选这里有些语句你看对,来找到你哎,嗯是有个。

打开看一下,你可能说为什么不找前面三个啊,来前面这个是JSP的,这明显就不对,这写法的是在什么ATM的码里面,这个呢就是哎XML就和刚才我们说的一样,就这个语句会定义到这个文件里,代码就是这是个语句。

一打开,它提示删除文章啊,然后delete id这个id呢可以作为参考,那然后这个语句delete edo u write了这个in in,看到没,这不就是my babies的那个音的那个。

这情况符合我们今天讲的,看下这里追踪一下谁调用这个id呢,把它进行CTRL加v Ctrl shift的,再搜这个就看java文件了,看哪里呢,那这是他调用的地方啊,这是实现实现地方。

我们再来看下面那个啊,执行删除文章的地方,还有这个地方删除的地方啊,刀文件,CONSOL文件,这个刀console,还有这个服务文件,三个学过java的应该知道的。

设备服务console控制器的刀文件是吧,那哪个呢,一般就是看这个地方吗,这个是enemy arctic console,点java我们可以看一下路由,路由地址是访问delete。

放delete的目录地址,删除是delete好,这是上面这个额,那么这里呢我们怀疑的话,应该是艾德米目录的艾德米路径那里,看下路径啊,这个文件路径在哪个地方,还有他的路径地址,路径地址在呢。

呃console里面的article ADD me artic console,看他的上面那个主类呀,啊下面那个加尔内,那应该就是呢请求是艾德米的pk,我们来直接访问一下这个网站。

啊在这里后台路径就是在这里啊,报密码呢你可以自己看一下那个项目需求啊,是六个一啊,六个一这个密码呢在他项目里面有介绍啊。

你可以看一下那个锁定文件,这里刚才也给他看过了啊。

哎默认加密码登录下啊。

登录进去之后啊,我看录哪个啊,那就是ALME路径是这个什么tick,我们访问一下,嗯那不对,那是这个里面看文章列表的,阿克提格show time,然后触发地址,他咋个tick。

啊这是请求地址啊,我们要找到刚才的代码段那里,刚才那个打不断呢,啊裂开路由第子啊,请求delete,那应该就是delete了啊,就是ADD me artic,后面加上delete那个应该是路由。

这后面也有啊,那文章列表的一个路由地址,添加文章文件列表,推进文章,好我们实验一下啊。

看这个上面来的应该是删除这里,那是安全漏洞,来我们实验一下啊,他这里呢结束的数据呢,我们找到刚才那个地方还不给。

结束这个参数嘛,可以看一下那个参数的来源啊,这里我们就不细看了啊,我们直接呢来测一下,应该是这个删除这里啊,我这样子啊抓个包。

因为这个是后台的啊,我等下租的时候呢要要什么呀,要登录后台才能注入,所以这个漏洞呢也是个激烈的漏洞,就是后台的四个注入还蛮尴尬的啊,来找一下这个地方呢,把他删除一下啊,我把数据包抓一下,好这是那个点啊。

注意点请求地址。

那就是那delete啊,参数就这个,所以说刚才那个路由了应该是对的啊,分析的是对的,它路由地址呢前面的就是这个什么delete。

加上前面的结束这个参数值呢,啊这个id他发的也是这个值嘛啊,然后触发这个地方吧,delete的一个操作好,我们现在呢就找了个数据包了。

我把数据包呢拿出来测一下是不是有漏洞,把原始报拿出来啊,在这下数据包复制一下啊。

这里测我们就直接用SMAP测了啊,就不用手工测了,因为他这个是可以SMAP测一下啊,用棒刨一下,就用碎包帮我跑吧是吧。

唱你个TIT1名字就叫INXEDU,这个东西是吧。

写包景区,然后这里呢,就把刚才那个数据包的发送的东西呢。

给他提到最后面posting,那么应该是这里阿存在注入给他写个挺好,告诉大家从这里出,其他不用管,你说为什么要数据包呢,很简单的道理,因为这个网站是后台注入,如果你直接去请求这个地址去发这个包的话。

后台都登不进去,怎么测呀,对不对,所以我数据包写进去就是默认的是,这是装这个西格玛的。

有登录权限的,在后台面有登录权限。

那么现在再来了,那开一下这个终端啊,测一下啊,是不是有开始,你一下SMAP杠A,请求这个什么NX点0TIT回车分析,他问你是不是在星河这里注入啊,那就OK了,回撤回撤回撤回撤,能注入对吧,没有问题啊。

是不就和我们简单分析一样啊,后面你有什么资格map啊,那样去操作这个我们讲过的。

如果说你这个不懂,你把前面课程多看一下。

那这个这个网销这个系统呢。

它采用的就是他的这个实现框架呢,我们可以自己通过这个索命吗,这使用那个索命对不对,他也看到了,就是就这个是什么技术架构,那他是这个。

嗯没有价格吗,是那个什么。

是哪个架构,唉我也懒得看了啊。

就是那个spin加my babies,斯加加什么鬼东西,这个价格啊,嗯你这你要自己看的啊,现在呢可能是spring BO的多一点吧,不过也无所谓了啦,好这个就是我们这个情况啊,这个是这个呃。

伤了这个java安全里面那个四个注入啊,这个GDBC和MYBIS,然后呢这个MYBIS里面的有三种写法,所以呢刚好呢这个是一个系统呢,就用到是my baby,然后呢还用到今天这个IN注入,在这里呢。

同样呢也没有使用井号来进行预编译,信用美元符号呢,让我们找到这个漏洞的一个所在,就说你把这个事情啊。

把那个MYBS这个注入玩明白了,java代码懂一点,那像这种简单的这种源码程序,你完全是能够挖到这个漏洞的,这有什么难度啊,没有任何难度,大家看一下我有没有可以去跟踪代码,有没有挑战嘛,什么都没做啊。

就是自己的搜了个特定关键词,找到这里是吧,那这里追踪这个东西在哪里,实现这个删除文章的操作,给你说删除文章了没,又是后台里面的艾特米那个目镜,那肯定是后台里面的文件管理还删除啊,把这个数据抓是吧。

测一下就行了呀,当然这是有源码啊,没有圆嘛,你肯定就只能说黑盒里面乱跑拦车了啊,那就不一样了,好这个是我们说的这个是个租屋的啊。

那么那我们再看下一个啊,这个叉叉一的叉叉一呢其实和我们pp一样,只是说在java里面呢,它有五种实现方式,叉叉一的一个情况,我们再打开一下那个环境哈,叉叉一的哈,有XML reader和SXV的。

还有这个东西嗯,把你关了。

快把环境关了啊。

嗯唉又是那个,真是烦死这个东西,全部用G1。8才行,用到其他版本还不行啊,呀啥情况,9a2 v,什么鬼,你说这有时候啊,这事情就像这样子搞,这谁顶得住啊,啊刚刚的好好的,我这啥都没有干,对对对。

数据库版本,数据库版本,哎呀这里你自己有时候你哪想到呢呢,妈的真是啊,顶都顶不住,你不说我又忘记了,他这个呢有三种呢,XML的reader和这个SSV的,还有这个SSB的,他写了三个。

然后这边他写了五个,对他写了五个乌格勒。

你可以在这里看啊,哎一个是五个,一个是三个,我们就看五个的吧,三个呢就是吧,那没什么说的,三个就不看了啊,我们看五个的叉叉一的,一种呢用XML reader这个实现,内去那个的升级函数都给你写上去了。

就说你要升级这个叉叉一的漏洞的话,就找这五找这一块的函数呢,整不他都帮你写上去了,你可以做个笔记嘛。

在这是吧,他演示了五个,硬是用XMLV的去读取这个结束过来的值,然后进行XML语言的解析。

这一个第二个呢就是用这个LSX啊,这个类工厂类啊来实现叉叉一的这个解析,然后呢还有是吧啊,用这个AERRA呃,一个是那个builder,一个reader啊,这builder啊加上个reader。

然后再你看下面还有啊来用document builder,还有什么这个,然后你可以看一下。

来写了五根吗,叉叉一的一个矢量安全呢,他让你测的话就是这里发送这个content的参数值嘛。

在这里写结束它的参数值,在这里面啊,全部都解释这个cont探讨请求,路由地址那里,接受这个RESU码请求过来的参数值啊,字符串的content啊,然后呢用这个东西呢去解析它们啊。

好后面呢就是写成那个XML的那个po order嘛。

前期也讲过,我们试一下看行不行,是不是这个情况,给这个地址啊,把这个改一下,然后请求下来勾一下,看一下,这里来解释到了,对不对,这个插板也是个请求,请求呢也是把地址一改了。

他后面呢把这个地址改了个那个语法嘛,美女后面DC改就改啊,这我也不用测出车的情况啊,呃他的修复呢说白了就是过滤关键字啊,黑名单啊啊过滤这种嫌疑头写法,这这这里面也就是黑名单公里。

这个叉叉一呢漏洞也讲过,我们把这个java拿出来给你看,那就是告诉你,哪些会造成叉叉一族在java里面的执行函数,因为这些东西呢就会造成,你在审计叉叉一族的时候,那也是搜这个特点的关键字。

如果在黑盒中的话,那怎么测的呢,黑盒中就是看哪里呢有发包发这种XML语言。

然后把这差语呢给他替换成是吧,类似这种是吧,带Y查询js logo,如果你发过去呢,对方呢既然logo收到请求,那恭喜你,这就叉叉一诺啊,如果说没有接收到,对不对,那可能过滤了HD。

那换一个其他协议撕下,能理解吧,黑盒中发这个找这个漏洞的话,不管是java还是pp都是一个码事情,就是看这个数据包里面对不对,发的时候把那个东西呢改成这个东西去测试。

前期我们在讲碳白植物的时候已经讲过了啊,所以这个叉叉一,这个注入在java和pp里面是没有任何区别的,例有区别的地方就是函数不一样,没有其他区别,攻击利用原理和发现全不一样。

这语言不同的话,里面的函数不一样,没有什么区区别啊,这后面的像这下面的,你看啊,这下面的呢还有这个什么这个写法的是吧。

这都是一码事情,对不对,都是一码事情,人家提交,那是不是压不到你还有什么东西,那下面这个几个我就不测了啊,不一个测了,那你就把payload的改成呢,这个请求这么AP的FTP协议啊。

那些其他协议它支持的这个java协议就可以啊,前几天呢我还前几天还听见人讲,说那个什么讲文件上传的时候啊,pp讲也不讲java讲,你说java讲跟文件上传,和个pp讲文件上有啥区别啊。

你看这个文件上传java的。

他是怎么做文件上传啊,我把代码给你看一下来,一模一样,都是那么一个逻辑,java无非就是上传的是JSP文件啊,但这个pp的上传pp文件就这个区别,你看这个文件上传,这是写的代码,它它怎么检测呢。

也是一样道理吗,黑名单白名单单是过做过滤,对不对,满足就行了,不满足就不行,那就这么个情况,有什么一样不一样的,是加个代码,你给你看一遍就好了,就是讲啦。

他们有太多的相同之处,不同之处才是我们研究的终点啊,所以是稳定商圈,我们用PPT讲的就等同于java也讲了,他都是那些方式,都是那些过滤,能绕过就绕过,无非就是说有些工具点在java上面用不了。

就像什么点xx x java里面没有那个东西,因为那是阿帕奇中间件的阿帕奇,那中间不支持JSP,不支持java,那除此之外呢,大部分都差不多,无非就是一个上传JSP的,一个上传P1P。

好这个就是我们说的那个叉叉一啊,叉叉一的上面的情况就和那个pp讲差,上面注入是一模一样的,然后呢再就是这个STI的啊,STI的这个模板,这个模板呢我给大家看一个文章啊,前期我们可以看一下我的课表。

你不要说我没有讲很多东西我都讲过,包括今天我把课表发出来,群里说高端高端SSTI都有讲,都开始讲的,妈的安全开发里面的讲两次直播,你还现在就说我刚讲,我也是真是服了你这些人。

我们这一期的时候,你看我讲pp开发的时候,这有一节课呐,26课pp应用模板应用spring m渲染,这个就是讲P1P里面,那个那个这这这这个这个模板的,那个SSDI是吧,今天呢java里面呢。

你看在安全开发的时候讲过呢,java里面演示过这个,在哪里呀,嗯跑哪去了,java里面在在在哎,这里呢第38天呐,也是这个模板猪,也是s sci的,我都是说没有把全部的奖,我最清楚就是全部模板的。

就抽了一个比较代表性的,这是java,那么你看一下文章啊,这个SSTI这个是模板注入,对不对,这个东西啊,我这篇文章模板做的肉度,我们看一下啊。

来pp的Python的java的pp里面呢有这几个包,出过模板注入其中,我们当时讲的是这个,啊Python的比较经典的是jungle和这个什么JIJA,这是CDF里需要考的。

然后java里面呢这个和这个是吧,我们讲的是另外一个,对不对,那什么是模板注入呢,我前期在安全开发已经给你讲过一次了,简单来说就是服务器模板注入啥意思呢,就是模板渲染模板是个什么东西。

我可以这样去理解它呢,比如说像这个网站啊,他是这么一个架构是吧,打正面是菜单栏选项栏,然后这边呢是显示栏,对不对啊,然后这个网站呢这个八成嘞这面也是的,然后他这个明显的要模板,要比刚才那个好看一些。

是吧,这里还有这个图标这个东西啊,这个呢就可以当做一个模板啊,模板呢写好之后啊,你只需要呢比如说这里啊这个SITI注入,你如果说要改这个字的话,你就只需要怎么样。

只需要把数据库里面把这个sci改成其他数据,那么这里就对应修改,其实就说别人帮你把这个条条框框啊,显示架构啊都帮你全部写好了,你就只需要改一个地方,然后其他地方就全部对应全部修改了,就好简单啊,就好。

你写简历一样,简历模板你知道吧,别人把条条框框搞好了,你就往里面填数据就完了,就是这么个情况,这样解了吧,那么模板注入STI注入就叫模板注入,这个模板注入是什么安全问题呢,它其实也是非常简单的。

由于那个数据在插入进去之后,会被这个网页去解析,那么如果这个数据啊啊C传JAVASCRIPT代码呢,是不是会出现一些RC1漏洞呢,来我们来试一下啊,比如说来这个SIT注入,那这个模板对不对,它就显示啊。

前期我这里还给他讲过,你看一下啊,这个讲过这个demo单,这是我前期安全开发的一个课程。

那个地方你看,那这是刚当时写的呃,就是这里呢有个index页面是吧,然后index界面呢这里有个标题啊,或者说一个值我要更改改成data啊,然后后面这个地方呢取这个把它先删掉删掉。

然后这里呢他就对那个呃data值呢进行修改对吧,data data值再进行修改,这个不知道大家还有没有印象啊,不过大家还没印象啊,有印象应该知道啊,然后一执行是吧,执行地方都没了,妈的,一执行之后呢。

他就会干个什么事情,就把那个替换了吧,这好这讲的有段时间了,不知道大家还记不记得啊,就是那个SPINPUT的那个项目,当时我们用那个给大家去讲安全开放的哈,更改这个值呢来实现一个那个命令,执行那个东西。

你可以参考一下那个课程啊,我懒得去打开看了啊。

对不对,吓我大跳,我怎么可能没有录屏呢,吓我一大跳啊,我说怎么没录屏呢,输了啊。

我都快忘记了啊,就说当时讲的是怎么把它搞出来。

我都忘记了啊,但是这个模板注入这个原理,我们是讲过的,对不对,你可以看一下安全开发额这个支点呢,我看一下这个源码啊,可以看下源码,那这是这里啊,大家可以看一下啊,额这里呢渲染这个页面。

然后这里一个long是吧,渲染这个加载一个long页面,我们来进行一个run,好,这里执行一个什么,Who i meaning,这个地方还没有执行出来,它也是杠杠CAC呢,看计算器,这就弹出来了。

你看他改成个CLC,他这样就弹出来了,这什么情况呢,来看一下啊,他后面参测了这个值呃,就渲染这个long下面这个页面是吧。

然后这个是应该是他那个静态页面,我们看下源码,这里,是是不是这个项目啊,我看一下啊,我怕搞错,项目又有两个靶子,我找一下那个源码,先找个源码,看是不是这个项目的,路径地址是非有STI。

补这个补这个另外一个项目,这个里面的。

啊SITI固有地址就这个了,对了啊,long项目的long long应该是在这个resource字段里面,模板里面后面加上个long目录,正常来讲呢,那你比如说加EN他就会选这个界面,那我也看一下啊。

那是不是就显示UNATM啊。

那就显示这个吧。

如果加ZN,但是这个ZN点替换显示内容。

看一下是不是,是吧,在一起就选这个页面,它其实就是说参数呢就是让你渲染这后面页面。

这个页面就是像是一个模板,对不对,然后这个后面一个值呢,他可空是用这个模板,这个模板有个漏洞,后面那我们就直接加上这个JVA的调用代码,就把这个代码给他写上去,导致呢他直接执行这个java代码。

java代码是干嘛的,Java long long time get wrong time,EEC执行命令的一个什么java函数,执行个CLEC造成RCE安全的写法呢,就是把固定式1N和在一起。

所以你怎么改呢,就没有用了,所以说这也没什么可讲的,那么简单来说呢,你就这个SITI的,他这个利用呢其实就是狗后后面那个的值啊。

改值之后再让他渲染这个相关代码,造成一个RC执行,他其实就是个RC执行就是代码执行,执行后面这个java代码来实现这个命令执行,来实现这个代码执行啊,R c1,然后大家只要记住几点啊。

第一点就是SITI的漏洞原理,还点呢就是我们说到的就是这个支点啊,几个脚本语言里面出现的这个STI的,这个什么漏洞啊,啊在这几个,那么在看源码升级的时候,大家要知道我说在信息设计。

如果发现是这个模板也要呢有所警觉,这是包出过SST带几个包盘,在升级里面看到这个模板,然后呢在黑盒中使信息收集那个场景上面,有些人能够识别出来的啊,看到这个模板,那么很有可能这里呢就会有。

SITI的安全问题,那如何测,在黑盒中如何测呢,其实就是测后面的那个参数值,因为模板呢他后面那就是这个long。

long呢肯大家不知道这个long是什么意思,你可以网上看一下一些正确的地址啊。

我也讲过这个地址呢,有些地址呢就是后面写个long,然后呢你比如说我有些网页你在访问的时候,他是会让你选择什么中文版和英文版是吧,他可能后面一个long加上个EN哎,那就是中文英文版加个在一起。

那中文版或CN那就是中文版,对不对,那么你把这个CNZN1改,改成个代码执行的代码发上去配load,如果他执行成功了,那就是STI就这么个情况啊,对吧,你比如说呢他这里写了很多前端这个模板。

页面写完之后,你看下面有很多变量,是不是,然后呢他就用这个模板呢把这个电源进行替换,就是我刚才说的嘛,对不对,写好的模板之后啊,你在这里呢只需要改一个地方的变量值,那么比如说这个文件下载是吧。

你要把这个改掉,你直接找这个变量那个地方是吧,把它一改,把这里的,所以这个地方都会改啊。

好理解吧是吧,你自己用过简历模板,应该知道模板什么意思啊,然后至于他用什么模板啊,这个白盒里面呢那就比较简单了啊,白盒里面直接可以看到的啊对吧,百科里面直接可以看到的应用的呢,上面的引用的这个呃地址啊。

包括后面这个是吧,这个代码函数啊,这都能看到的是,黑盒里面的话就是看那个上面信息收集,我们可以看一下呢,那地址我们打开之后啊。

看信息收集,这收集个鸟毛,收集半天也没收集啥东西,看这个心情收集这个也只是一个java,这不是刚改,收集不了啊,收集不到,那有些是能够收集到啊,像python1些东西,它涉及到java这些东西搜不到。

那黑盒里面只能盲猜了,所以说这个java里面那些漏洞啊。

这个模像这些漏洞STI这种漏洞呢,他不给你提示,不给源码的话,你自己乱乱,在黑客上面去测,是压根就没有什么理由去测,所以说这黑河里面滑倒漏洞呢,很多都是一些能测的漏洞,一些不能测漏洞,像什么SITI啊。

这种漏洞是吧,测也测不了,没有一个地方的好测,你也不知道这里是不是测sci的。

对不对,好我们这里呢我们再看一下这个支点啊,看一下这个还有这几个呢啊,这几个呢也有啊,还有这个SSPIEL表达式啊,对不对,SPL表达式,这个SPL表达式是什么东西啊,我们现在来解释一下啊。

这个呢是java里面特有漏洞,在pp里面有,pp里面有SITI漏洞,也有这个叉叉一,也有这个什么circle,但没有这个SPL,这个SPL呢是spspin excel language。

我们可以看一下官方这个大概解释啊,啊PL啊,这是要解释,然后这是这个题目,我们看一下啊,还没有东西在这没有了,对不对,搞什么东西啊,你们,LPL的这个表达式语言啊,然后呢这个是那个情况啊,呃简单来说呢。

就是这个spring put的这个解析语,他是干嘛的呢,他说本来为了设计呀,这个模板渲染这个初衷啊,什么用户输入啊,什么教研造成恶意代码问题,额,这个是啥呢,说白了啊,菲律宾的1FEL,大家知不知道啊。

1cl就是我们说的,将后续的这个代码呢当做脚本代码去执行,但是在这个SPEL呢和他是差不多的,我们可以看一下啊,来这是他的一个简单的一个情况啊,他其实和SSTI呢有点相似,我们先看一下这个代码啊。

呃在这里呢我们看一下这个漏洞代码吧。

就把他们关了吗。

那这是它的本身的一个写法啊,本身写他把这个值呢进行解析呃,这个安全代码和增进性的你就自己看吧,我就不看了啊,其实就是一个很简单的一个过滤呃,这是实现代码是PL的那个表达式,那个解析器为什么有这个东西啊。

它其实就是说他说是一种运行,查询操作对象的啊,造成这个漏洞,那么也是有可供参数啊,和一个值也没什么太大区别,其他漏洞都等着相似,就说这个东西有什么不一样啊,你当你传这个值的时候啊。

来传这个东西给他的时候,这个java long long time get的long time e r e c,大家都知道这是一个java里面啊,那个命令执行这个类,后面再加上我的执行命令。

就可以执行命令给这个参数ex之后,那我们自行装啊,100-1,java里面100-199,差点运算,然后呢你再给这个值给它,再给这个值给他是吧啊,这个地方呢换成我们想执行的命令,C号AC。

你看这下去就弹出来了,额源码你自己可以看一下啊。

源码这个SPEL的源码,他在这里,这是它的源码,这个结束值我们就说了,结束这个ex嘛对吧,RESPON这个结束的地方,然后呢这里呢用这个两个东西去解析,去解析它就可以了,这是他的这个漏洞的成因啊。

就是用到这个解析式,而PL呢简单来说了,他就是spring put里面那个解析语言的东西,关键是函数在这里也有,就搜这两个关键字表达式图,其实啊说白了就和PPT那个e fl一样的。

就是你可能呢需要执行一些相应的代码,或是一些相应的东西的时候啊,需要执行它,用到它,那么如果这个函数可空的话,就会造成这个SSPI角组,这个S线组就这么个东西,网上那你没学过的神乎其微。

我不知道这个什么东西啊,表示出啥呀,就这个意思。

就是在你很简单的题,你就把这个放进去是吧,就这个情况,然后呢,主要我们还要学习一下,这个表达式中有什么差异,比如说他有黑名单验证的时候该如何照顾它,你看下啊,来他这里过滤的过滤真的。

黑名单的设置为一个黑名单,java long long time ec过滤这几个关键字,我们可能绕过它。

来这么一篇文章啊,大家可以看一下,就说如果说你碰到了这个安全代码呢,啊这里常见的它就不行了,灰变量过滤,你这里这样写就肯定不行了,对不对,你看他的这个绕过方式啊,看文章给他看一下,编码怎么可能呢。

你想多了吧,这是所有表达式注入我刚才说过的NOGNL,对不对,还是刷刷的,这个刷的框架已经很少了,所以这个表达式中呢像不怎么讲它了啊,不说什么什么不灰啊,不过东西你要根据现在那个框架潮流啊。

现在是流行的是sping put的呀,这都是早几年的东西的漏洞之王啊,这谁用他啊,对不对,好,再往下面看啊,还有呢这个SPINAPL嘛,对不对,我搞错了啊,不是spring boot,是spring的。

spring boot里面呢有CV1,也有这种漏植入,也是spring1R的表达式组,但是他有限制版本啊,这几个漏洞,这就是个表达式的几个注入漏洞的,表达式的一些几个漏洞。

那JSP的JSPTL我刚才也说了嘛,也称之为1L是吧,GSB的啊,GSB所以现在没有用的了啊,太少了啊,所以没有什么讲的必要,还有就是这个这个叫什么,那个搞了个叫什么鬼东西的呀,那个蛮王飞翼哦。

就是那个大数据里面那个搞日志分析,那个鬼东西啊,那个库,是吧,这里有了这几个关键字,那还有VL什么这个框架啊,这都是java里面的所有东西了呢,我们讲的是s pr n g o呢是那个啥啥的啊。

JSPL呢GL那就没必要讲了啊,老级出了轮不到了,所以你看啊这里呢就有这个支点啊,大家就知道了,这是所有java里面存在的表达式注入这几个类型,现在最多的就是阿莫非一奥和这个LPL,你可能说LPL呢。

那怎么讲不讲啊,后面有那个代码审计的案例呢,会给他继续说的啊,现在不要急,先晕思一下,然后呢除了这个之外啊,他不是还有黑名单吗,然后他这里给了个这个E叉P,我看下这个地址啊,他那个里面都还给了E叉P。

就从黑名单里绕过,大家看一下,嗯他写了个黑名单反射,利用反射绕过黑名单过滤,你看他怎么写的,我们再把它拿出来对一下,那这算圆心啊,圆心这样写的,先把杆子拿出来再对着看一下啊。

这也是把我们前期学的知识点呢有没有用呢。

来梳理一下。

对不知道,这是大子装啊,就在以前那个还叫payload,哎,以前那个直接写上去那个那个执行那个地方,对不对,12源码啊,这样写的,然后这里的是我们执行命令抓,比如我们执行的CLC。

他这里是open什么A这个东西就是那个MARCO的啊,你别搞错了,这个MARCOMARCO打开计算器那个东西啊,我的是windows电脑啊,windows电脑是C和C啊,然后这个是他的黑名单的。

我把黑名单拿出来啊,好这黑名单的啊,那黑名单这里呢有这个什么反斜杠这些东西啊,我们先不管他啊,我们可以把它,指环一下啊,C2AC对,把这里去掉,看一下能不能先指示一下,试一下啊。

黑名单的,好这里没成功啊,我们先不管他成不成功啊,先看这个语句,他这样写的啊。

我这个版型啊,先把去掉啊,啊去掉之后呢,好看一些,等下看你就是太麻烦了,哎,他妈的个替换在这里怎么替换呢,好好这里把他全部搞了啊,哎这里呢你看一下啊,什么get class volume。

Java long long time,Get model z r e c,然后什么INVOKE,然后get class嘛,java wrong time应该是写重复了吧,这好我看一下啊嘞。

然后呢这个执行的一个情况啊。

嗯网上呢也有这个写法,网上也有啊,我先给大家看一下啊,这个文章辟谣,这个又是什么东西啊,他这里提到这个反思啊,这是CCTF里面的考点,然后呢这里有个那个,这是他写的另外一种写法,好后面是分析啊。

另外一种写法,好这里呢你可以看到R呢,他这样去写了一个东西呢,这和我刚才差不多,你看啊啊这写的差不多,这个东西是怎么来的啊,他说这里是反射机制,来我们看一下之前我们讲过的反射那个多模。

还记不记得啊,大家当时我们写反射的时候,执行一个EREC的时候是怎么执行的,大家看一下啊,应该是这个吧,Get run esc,那这是我们当时写的,那就是原形,写执行代码是这样写的的,原生态加入这个。

我先把这个注释掉啊,这当时我讲的啊,当时我直接呢,我用原生态去这样执行一个CLAC1运行它,执行一个计算器嘛,就是用这个java代码去调用这个原生的,这个什么盖装反的执行计算器,对不对好。

那么现在看一下啊,把这个代码给注释出来,这是我们自己写的,这怎么写的呢,get a执行里面的方法点class,然后从这里直接说get wrong time,然后在这里呢再用这个VORK阿卡斯。

然后这个当时给他说过了,先获取什么方法来,这是我们写上去的,大家还有没有影响啊,啊有没有影响呢,这是我们当时写上去的,那个呢写上写东西呢都还没影响好,我们来明星,像下面这个之前是直接运行啊。

现在呢就是用反射机制去调用染室内的,这个跟RT e e c执行这个CLECCLAC行,来执行一下,看能不能执行,他们是也执行出来了,那么你对应看一下,来来flame得到里面的jon time。

后面那个get match和这里是不是对应上的呀,L o k f10,get class flame在DOS这里面也常见写法了,所以说他这里提到的这个什么反射绕过呀。

其实就是来源于我们前期讲过的反射机制,就是呢用反射机制呢去写了一层代码,然后呢以这种形式去表示出来,因为你自己如果直接去写这个东西的话啊,你这里把那一空格一去掉,那肯定就有问题了。

他就是叫这个反射机制呢,从这里取把它拆分组合,拆分组合就能让你自己的重新组合这个字符串,所以你才能绕过,你如果直接把这个东西呢把它更改,那这里面谁是谁啊,这个肯定错了呀,所以他需要对这个字符进行操作。

操作的话,就必须要把这个字符都给他拆分拆分,既要让它成功,那就肯定要用反射机制,比如说呢for time get a class,得到class flame哪一个里面的这个里面的,你把自己拆分。

不就绕过这个黑名单吗,他的黑名单是怎么限制的,是限制这几个地方,你把你拆分,他就找不到了呀,就是利用反射机制把关键字的拆分,从而再把它还原出来,就和我们前面讲的反射机制原理一模一样,什么flame啊。

get class啊,get那叫获取你的方法呀,是获取你的方法呀,然后去调用这个方法呀,对不对,就这么个逻辑,包括后面的其他漏洞,不管说CTF里面还是漏洞挖掘里面,在白河里面去挖到这个漏洞。

然后这个漏洞有过滤,能不能绕过,就是能不能挖到这个漏洞的成因,能绕过就是这些事情,那么反射就是经常会用到的,你包括我们之前说的什么反虚化那些漏洞是吧,很多都扯了这个反射这鬼东西,对不对。

其实那就是搞这些事情用的,所以说前期的安全开发不是说上的好玩,你扫完之后呢,要心中要把它去把它记下来,这后面一些漏洞呢在发现的时候啊,把它结合上去,多实践几次啊,要弄懂啊,你搞多了是吧。

把那几个漏的多多浮现几次,把原理最清楚,把什么反射呀,那几个概念搞清楚,感觉现在这个java的一些东西呢,也就是吧也是那个情况,后面呢再多学点展,展现未来,前天还有人说那个什么鬼,还有几个技术啊。

网络上呢之前是吧,在我这边也学过的,他专门搞java的,他也非常厉害是吧。

以前他没有学化学,看下我呆的是吧,然后后面他自己搞java搞的很深入了啊。

我们那个许嵩,他自己呢写了个那个java的那个学习路线啊,你可以参考一下啊。

写的非常好啊,就是在哪里啊,也就这里那,那是他说的啦,A s m,刚才昨天还有人说什么SISIT技术是吧,反射载DA的MEF加500是入门的那概念,那不说了,反射那这个JNDI是什么东西,RM是什么鬼。

代理七是什么鬼是吧,反虚化基础,然后研究这种的各种的种的反虚化,把它把它复写,复写完之后呢,完还内存嘛,完了没有其他的了,其实你说难也难,说简单也简单,你是把条理搞清楚了,一个点一个个点逐步击破。

这前期IDA啊,MAF啊,这不叫我吧,我讲过呀,凡事也讲过呀,对不对,建立安呢入了个门,讲过是不是抛光弹呢,把这个几个反序号连一根那一搞,也还是那个情况嘛,是吧好,那再把这个内存码一完嗯。

啊这个许骚呢他有基础,他以前在学校里面那就是搞java的。

是学汉学java的,当时报名我的课呢就学web,对不对,学完web他结合他自己JA的这个技能,专业java程序员,你说他玩家完全他快不快呢,一下就上市是吧,一下就上市,所以说啊这个专业玩这个开发。

搞这种语言的那一点都不难啊。

网上那些什么讲java安全的,大部分都是java程序员,所以他要玩起来的比你要简单好多,你这个男的不是说java呢,还是你不懂这个语言难啊,你懂得这个语言呢玩起来也是非常简单的。

他的安全问题呢都是那么个情况,有什么难度呢,你今天我把这个课程上什么STISP啊,你说有什么难度,有P那个难度啊,因为没有难度,他的难度一般不是对漏洞的理解,是你大A码看不懂这漏洞就这么个情况。

有什么难度,那个叉叉一啊,这些什么东西是吧,一模一样的啊,你批评在里面东西搞啊,漏洞学完之后,他就这么个情况,只是说有些漏洞它有有些没有,对不对,你看我们今天把这个结束几个漏洞是吧,还有几个漏洞呢。

下节课我们马上要学的,那么接着女儿的一些事情,在这个反虚化的那个原生态的,然后呢再就是这个RC1把自己搞啊,搞完之后呢,我们再搞他的组件,把这几个组件再一分啊,逐渐分完之后呢。

再把这个什么这个什么张个未授权呐,还有什么轨迹打不T的,这个什么这些东西呀是吧,一一上,后面呢再把那个把那个嗯练,把他换一节课更一下就可以了啊,我们后面呢讲完之后呢。

再讲一下那个Python和点net的一些情况,讲的就是把握完全就讲逻辑去了啊,讲完逻辑弄懂再讲,把逻辑漏洞你讲的差不多了几个逻辑漏洞啊,几个能不能东西讲不讲了啊。

再讲讲不了了啊,太多内容了,没完全太多内容好。

今天就说这么多了啊,看看大家有什么问题啊。

其实大家只要记住啊,你找对了环境,找对了这个东西学的东西呢也不是很难的,自己私下里花点时间去学。

如果说我今天不把这个项目呢把它拉出来,你自己一个网上的去搜O中字浮现。

连代码都搞不清楚,你对着这个环境的一些漏洞呢去学,就好比以前我们学PPT的时候是吧,那时候资料甚少有人呢写了个什么皮卡丘啊。

DFWV拉呀,那简直是你妹的。

是把神器天天在那个板子上面不亦乐乎,看下代码呀,打下漏洞,但现在也是这个情况是吧,java的那个安全质量少。

还有人能写的这么好齐全的这个什么八场诶,也是那么个情况啊。

那再缓个几年,这个东西呢也是地道货了。

哈哈哈哈对,还有够浪的是吧。

那我都给大家准备好了,你看看这个呃。

巴萨还击来,啊你们说勾让我想开了,还,啊这是Python的一个什么鬼,button Python的一个那个源码的button,这个是专门s sci的,这pp的pp不用说了吧,太多了啊。

这个什么皮卡丘这些都不用看了啊,我们看下面的xs lab,这些东西也不用看了,SSR的这叉叉一的,这也不用看了,PP旗的也不用看好,在cs的呢,No circle level,No cirl。

关系数据库的勾环境的对勾圆的,loader的,这是我们那个JS框架loader ruby API的,这就有一笔,这就有点玩头是吧,人安全的,是吧,容器的app的app都有啊。

app的。

我是说有时候啊没办法没安利,我就喜欢用这种靶场给他去讲,真正有案例我是不喜欢讲这个靶是没办法,要么说案例那太敏感,要么说实在是找不到了,才会用这把东西讲。

地址要罚的话,在我发了这里啊,笔记这个上面,等一下自己没有,那不怪我啊,王师上面了,好,今天这课讲这么多了啊。

看大家有没有问题,有问题问啊,有问题就瞎了啊。

嗯什么时候线下聚会闲个毛啊。

上一个也说什么线下聚会。

P66:第67天:Java安全&JNDI&RMI&LDAP&五大不安全组件&RCE执行&不出网 - 逆风微笑的代码狗 - BV1Mx4y1q7Ny

今天呢是第67天了啊,继续讲这个java安全啊,web上面的加三个知识点啊,一个是java造成原生态的,RCE的执行的几个函数和类,然后呢,再来说一下这个GNDI注入的,这个实现原理啊。

这个在安全开发呢有讲过多某的一个代码端,同时呢也跟他说过啊,哎今天呢就是主要的再给他温故一下,然后呢再来看这个今天的重点,就是这个目前在当前java的这个安全体系中,实战中经常出现的五大不安全组件的。

一个安全的漏洞,指的就是我们这几个啊,给大家看一下武大完全主线sho fast jason啊,JASON啊,然后这个诶这个写错了啊,这可以节省是吧,还有个那个x s stream和这个local时间。

这个呢是我们java里面啊这个五个不安全组件,五个框架啊,也称之为不安全组件啊,专业名字叫不全组件,这在互网中啊,在实战中呢,也基本上好多都是通过这五个的一个安全楼,都是打下的,然后呢。

他的一个白盒和黑盒上面的一个分析啊,好我们来就先给大家看一下啊,呃首先呢我们先来介绍一下这个RC1的啊,RC1呢在pp里面有很多函数,那在java中也有这几个呢,能够实现调用出命令执行过来之后。

那么这几个漏漏洞的话,如果在黑盒中的那和pp的那个黑盒,发现RC1呢是差不多的,都是通过啊网站的这个药的传参和这个名字呢,来去猜测,这里可不可能是一个代码执行,或者是命令执行的地方。

是通过这个URL的参数名和地址,文件名和参数值来去尝试修改,和payload的提交上去呢来测试的一个方法,我们具体看一下,在java中,来实现RCE执行的五个相关的V和函数啊。

我们先把这个环境你都没呢给他开上来。

开上来之后呢,我们在后面呢也会给大家直接看到这个,什么这个CMS啊。

实体的cm s呢去代码分析到这个漏洞的啊,先给他开一个,然后这里注意一下啊,我们这里呢目前开的是一个用JDK,1。80112去开启的啊,等下来我们来逐一观察啊,开错了啊,开错了解压包。

这个死的,把环境启动起来好,我们来访问一下。

好这个是那个环境啊,我们来看一下啊,呃找到这个地方的这个什么,这里好,然后呢他有五个啊,我们具体呢可以打开这个程序。

源代码呢大看一下。

fast JSON和jack jackson开发哪个用的多,应该是fast fast jackson啊,JKJACKSON呢以前用的多,后面呢比这个fast取代了一些啊,好。

这个呢是我们那个GL8那个源代码那个地方啊,我们来找到那个漏洞的那个地方啊,看一下啊。

随意的啊,只有这五个啊,我们先看这个第一个啊,第一个呢是wrong time。

一个Z,这个是wrong time,一个Z,java里面应该是实现命令执行的wrong time一个Z,这个使用起来也非常简单,我可以看一下啊,这个代码段里面啊。

访问路由那是home m r e r c e的rn time地址,然后这里呢可以看一下,后面那个结束的一个调用的一个参数嗯,是这个semd string semd呢去接收的啊。

解释上面第一参数呢用这里呢去调用执行哈啊,这里呢调用的是rn time去执行。

我们呢可以试着去访问一下,执行换密提交,什么情况。

哎。

这他妈的怎么我无关了呀。

不是数据库啊,是正面那个窗口怎么掉了。

你们这简直丧心病狂。

这也叫翻车了吗,这里面的环境断了,这这这这是我这就是环境问题啊,崩了啊,提交你看他就执行这个这个是吧。

然后呢你可以看一下这个要地址嘛是吧,地址呢其实就是这个请求地址嘛对吧,你可以直接在这里的请求也是一样的啊,请求这个外面的地址呢他也是一样的。

这个是第一个实现的啊,然后你看下面这个这个low的JSESC。

这个呢对应代码端呢,我们可以看一下对应代码端,这里这个呢它调用的这个地方呢是一个什么,这个Z呢,你可以往上面看一下调用内啊,嗯是一个这个ASCRIPT里面的这个类,这是啥类函数呢,是这里面的东西啊。

这个类里面的东西一个一个解的这个函数啊,然后呢去执行这个东西啊,这个是怎么执行的呢。

哎呃这里呢有一个JS文件,这个JS文件那里面是这样写的,我们给大家看一下,找他这个代码端那里啊。

这个是那个test js js代码中呢是这样写的啊,就是定义一个函数函数里面的引用,这个java long long time,Get run time,去执行一个CLAC就是我们那个降息啊。

然后呢这里去调用这个函数。

那就这么情况啊,我们这里呢可以看一下啊,直接让他去触发这个访问,这个92。168。1点哦,哦咱们把发动后的test js文件提交。

哎这里点了提交之后呢。

没有反应啊,什么问题啊,第一次搞错了吧,那地址是对的呀,额执行之后呢,这里没反应啊,大家看到没,这个为什么没看第一代码呢,是这样写是没问题的,在windows上面那是这样写的。

long time执行计算器,哎这个java8之后呢,这个东西就是没有了,所以说这个之后呢,说实话这个有点老了啊,看一下啊,换个话题。

打开,把那个试一下啊,不需要看懂啊,看不懂是正常的啊,不需要看懂。

找个,TZHB你只需要记住啊,这个东西是不需要看懂的,这个RCE你小米都灰的啊,你看这里呢和那个脚本引擎之心一样啊,呃地址呢你就写了个什么,刚才个例子,1916801。28test js。

那你看这个将就就弹出来了,你看是吧,对对呃,这个呢说实话啊没有什么太大作用啊,他是在JDK1。8之前的那个代码里面有用到。

它是一个简单来说就是一个java的一个类呢,来实现读取这个JJS代码去执行的啊,然后调用到这个java的一个命令执行。

还有一个那就是我们继续往下看啊,继续往下面看。

浏览器也是真是麻烦啊,他这个一个浏览器登一个啊,你不要登两个,登两个之后,那两个有冲突了,好我们再看这个下面这个这个呢是叫gram,然后我们看一下这里面的一个代码段啊。

就这里了掉的内呢也是上面可以看到啊,那然后呢它的函数呢也是将这个类啊,你用这个东西呢来去执行它,执行之后的一个结果给看一下啊。

来执行cl e c啊,看到没,这就可以了,啊这是输入那个命令,也是给他传参的意思啊,好这是这个函数啊,三个函数了,再看下面这个,这个呢也是其中一个实行命令执行的一个类呃,然后这里呢是IP地址啊。

什么写的东西呢,一执行呢他就拼这个IP地址,然后呢你自己要加上管道符之后呢,哎他就是执行IP地址呢,并且呢是吧,什么管道五嘛,大家都知道了啊,来执行这个计算器。

这个呢你可以看一下对应的这个代码端啊,看一下这个PRO的啊,啊实现内呢可以谈一下,实现内呢就是这个java的原生内,然后呢这里边是他的调用的一个情况函数啊,对不对,啊我们讲这个呢不是说啊。

大一看他说的是好像是讲跟没讲一样是吧,是这样的啊,这个东西其实就是说熟悉这个java里面,触发RC1的几个内核函数,你把这几个记住就可以了,因为他的漏洞影响和利用呢,我们都讲过,我们讲它的原因。

把这些熟悉编之后呢,你后期的话去发现漏洞,去审计漏洞的时候呢,去搜这个相关的类和函数呢,来确定这里有没有这种东西来去挖这些漏洞,能理解吧。

这是原生态的几个东西啊,下面这个呢也是一样,执行之后呢也是一样啊,CLAC都可以简单的熟悉一下啊,这个是PRO的IM的。

这个往下面看一下,这个也是和这个类类差不多的,也是原生内,然后呢里面调用呢基本都差不多,咳就说这五个就是java目前的啊,主要执行命令执行和代码执行的五个地方,后期你在划这个java的项目里面的。

RCE漏洞的时候,就可以记住这五个哈,可以在里面去全局搜索,看这里面有没有调用过,他没有什么知识点讲啊。

主要就是大家熟悉一下就可以了,这是他五个实现命令,执行的五个这个相关的内核函数啊,呃然后呢这是他的几个点啊,黑盒我刚才说了。

和这个pp是一样的啊,就是你通过这个地方的这个参数值和参数名呢。

来去分析的,就很简单的道理啊,如果在黑盒中,你要去如何发现这个漏洞呢,那基本上也是一样的道理,通过这个地址上面的这么一个参数值,和全参的文件名呢来去确定,比如说你像现在啊我们去执行这个代码时。

你在这里呢可以看到啊,他在上面呢有这个什么,有这个执行命令的地方,对不对,执行命令的地方,然后你在这里呢改一下是吧,改完之后呢,他如果说有执行啊命令的一个情况的话,那么呢你就会确定出这个地址上面呢。

存不存在RC,那你看这个也是的啊,改成这个CLOC对他的确执行出来了,黑盒中的话,就主要就是观察这个地址上面的,这个文件名和参数值,就是正常的一些地方呢,你可能怀疑这里面有传参相关的这个命令。

或者是代码来去执行的这么一个可能,那么黑客中呢就是这么个车法啊。

白鹤的话,那这里代码可兼啊,你自己呢有人是接受这几个东西的话。

就能看到的啊,这没有什么太多说的啊,这个东西呢黑盒中发现的几率呢不多,大部分都是白盒发现的,黑盒的话主要就是刚观察它的功能,和这个URL的文件名和参数名和参数值来确定,这里你自己的去猜测,我说到这里呢。

很多人都不明白究竟是什么意思,就像我们说的,你去找一个文件上传的问的话,那么他这个显示就说你去测的话,你很明确他是个文件上传,那就找这个特征性呀,对不对,你要找这个功能点。

你看它指引前和指引后是什么星星,来去猜测的啊,因为黑盒没有白,没有代码,你只能去靠猜和自己的随便在上面去测才确定,而且即使说它有可能存在漏洞,你测不出来也是很正常的,因为你测的方法呢都是盲猜。

等于说这个东西你不知道有没有漏洞,只是一个测试方式,好我们接下来再来看这个JNDI啊,JNDI呢在前期这个37天的时候呢,又给大家普及一下这个知识点,就这个东西是什么鬼啊,然后为什么有这个东西。

他的安全问题有什么啊,这个女儿呢大部分结合的安全问题呢,都是这个RC1,就是说进行这个代码执行和命令执行,这个作用啊,一般就是做这个事情哈,我们也知道这个代码执行和命令执行呢,他两个是通用的。

就是可以利用代码执行的执行,做命令执行出来对吧,这点呢在前期上RC的时候已经讲过,在java中也是同样实用的,这个尖底栏呢说白了啊,我们再给大家巩固一遍啊,他是这个java里面那个域名和目录接口。

这个东西是干嘛的呢,他其实java呢去远程调用一些协议,来调用这些协议呢来去触发的,然后我们主要是了解他是干嘛的,这个之后呢还有个了解,就是要了解他怎么触发的,这个漏洞怎么实现的,又该怎么玩它。

这个才是重点,如果你自己那不太了解的话,我搜一下文章学下开发就明白了,那么现在我们来看一下啊,这个尖底I先来看它利用啊,先看它利用,那这里有个尖底I的个测试点啊,这个代码端其实在前期我们已经写过一次了。

他的实现呢就是用到这个东西啊,来去触发的时候呢,就触发这个RC1啊,然后怎么去触发RC1啊,建立I里面有这几个封装东西啊,这个文章呢可以简单的参考一下。

什么叫间谍呢,这是他这个图片,我们上次也给到一张图片来,就这个图片他java里面呢。

首先你可以看一下啊,他说是开发人员呢,为了这个查找和访问各种资源,来提供一个通用接口,里面呢有这个IMA协议和LDP协议,这两个协议用的最多,这两个协议是干嘛的呢。

简单的说就可以尝试用它呢来指引出RC1,那么还有什么DNSS啊,cooperate这东西呢用的比较少,基本上很少用,所以一般的话就用这个理I啊,这里是个概念,在它概念下面呢有两个协议,一个叫mi。

还有个叫ADP,这两个呢会和安全相关比较多,这两个呢可以调用出RC1来,然后具体他是怎么使用方式,又是怎么触发这个漏洞的,原生态的这个东西也说没有框架,自己写代码去触发这个漏洞,那么简易代码。

就像这里我们看到这个代码啊,就是这个代码,那这个代码呢你可能会问我不懂啊。

没学过呀,不好意思啊,前期在安全开发的时候已经有讲过,这是我们前期那个安开销花那个笔记,当时给他还测试过,测试过很多啊,所以这个东西一点都不陌生啊,一点都不陌生啊,这是他实现那个东西的。

就是说如何去远程调用。

那么就用这个类去调用它,如何去玩它,如何去玩它,一本呢是用RMA去触发它,还有呢就是LDAPM是什么东西,LDP又是什么东西呢,自己呢可以参考一下这个文章介绍一下啊,啊这是他的一个介绍。

我们这里呢也笔记上面呢也简单写一下啊,来r mi称之为远程方法调用注册表,而DP呢称之为轻量级目录访问协议,这两个呢都能进行相应的RCE的一个执行,好,我们先来去检测一下它啊。

那么这个呢在黑盒中是没有任何思路的啊,黑盒中是看不出来的,没有任何东西,因为你是无法去去判断的,像什么RC呢,还能看文件名和参数值呢,去分析一下,这是不是RC这个东西呢就完全看不出来。

基本上它的检测呢都是通过代码里去分析到的。

那么我们先来给大家看一下啊,它的一个简单玩法用的最多的就是这款工具,JNDI这个注入的这个解压包,就是这里呢就是别人写好的一个jr,然后然后你用参数呢去生成你想要执行的命令,和绑定的IP地址就可以。

它是一个什么实现呢,其实呢他就是利用这个JRR编写好了,写好之后啊,把它封装成这样,你就用它来来实现,网上呢还有几个工具,前期安全开发呢呢讲过两个啊,网上的还有几个。

包括我们前面在讲pp反序列化的时候呢,也介绍过一个平台里面呢也有那个东西,这个呢我们不现在不说他啊,说多了大家理解不起来,现在呢就基本上把这东西给讲解一下,看一下就行了,那这里呢执行cl c啊。

然后呢去绑定我的IP地址,一执行执行完之后啊,它就会生成啊这五个1。8的呀,什么JDK和spring put1。2以上版本,那个tom cut8以上的,还有个JDK一点齐了。

根据你自己当前网络环境的去选取,也不要问那我该选取哪一个,就这五个,你说选哪一个,哪一个不行,就往下面一个翻就完了呗,就五种撕撕一下就不行了,那这里呢你可以看一下,我选的1。8的这个r mi是吧。

我把这一勾选呢一一创建,创建完之后呢,我放到刚才这个什么JDI这里啊,看一下啊,这是它代码端嘛,大步端呢就这个代码是吧,接收一个参数值,后面那就是一个这个地址是吧,我把它写上去。

执行下一访问,哎,计算机弹出来了,这什么情况呢,消息里面都可以看到,有个什么接收这个地址请求,这个原理呢简单来说呢,就是用这个工具来生成一个类,这个类的叫做class,就是我写的class。

这个class就是把刚才你要执行的命令,它写成一个java文件,然程序加载可以这样去理解它,什么个理解,你把它理解成pp的一个东西,P1P远程包含一个文件,可以这样去理解它这个RM是什么东西啊。

他讲解的是什么东西啊,叫远程方法,调用,远程方法其实就可以理解为,远程去调用一个文件,文件代码都给他执行而已。

那么什么是这个代码呢,他就是利用这个工具呢生成了一个什么代码。

生成了一个执行cl vc的一个代码段,就是这个class文件把它生出来了,然后呢去监听,一旦有人去软件调用,它就把这个class给他执行,其实也是个java包class,那是编译后的文件而已,对不对。

然后呢你看这个凹DP也是一样。

复制到这里来,看一下它能不能实施这个LDP呢,把它放到这来执行。

可以看到也是一样道理,也是执行成功了,并且这里呢也是一样的,请求得个地址对吧,可能大家会问他这讲跟没讲一样,也听不懂啊,也不知道是什么情况,黑客中也不知道什么车啊,JNDI没有这样的玩法。

它的玩法是主要是在漏洞利用的时候玩,它漏洞利用如何java里面如何去执行出RCE,或者说用什么反序的话,那种各种漏洞如何去把logo利用出来,大部分都是结合的这个GNDI的一些东西,来去结合。

马上我们讲不安全组件的时候,这个JNDI就上来了,简单来说这个界面啊,它不是个漏洞,它只是java里面一个远程调用方法,远程去调用一个文件执行,造成一个RC1的一个结果,他是为了方便开发者。

只是说呀有人呢出现漏洞,把它呢利用起来来实现这个漏洞的执行,结果是这么一个逻辑,所以我们学金融DI是学这个东西是什么东西,然后它能造成哪些效果,这是我们学的,并不是说它是有漏洞。

也不是说他是个漏洞东西能不能理解呀,大家它其实就是个类似的一个功能。

然后漏洞呢是利用它来把漏洞利用成功啊,是把它当做一个利用的一个渠道而已,它不是一个漏洞啊,它是java里面的JNDI的一个技术,然后里面呢有一个IMI和RADP的,两个协议是常使用的。

利用一个呢叫远程方法调用的注册表,R m i,一个呢是这个青年目录访问协议OTAP,然后这两个呢还会有一些差异,有什么差异呢,就和你当前任性环境的JDK版本有差异,啥有差异。

我们来看一下啊,这是一张图,图里面呢前期也讲过,你比如说像现在我运行这个环境的时候,我把它先暂停掉啊,先把它暂停掉,我运行这个环节呢是采用的J里K1。8,112的这个版本,我们先给它去掉之后呢。

来杠一下VC来看看吧,他是一个JDKB点801啊,原始版本呢其实就是叫JDK,8U0112的一个版本。

网上能有这样的一个叫法给大家看一下啊。

来这个指的就是啊8U111啊,8U111和8U12指的就是这里的呢,这后面那个112,就是这个8U8代表的是1。8版本,除了这个是1。8,后面都是什么11版本啊,13啊,14啊,17对不对,还有什么1。

7,就是我们说的奇版本,也称之为JDK8,也称之为EEEK1。8都是这么一个东西啊,GDX8和接力1。8就是两个事情啊,就是一个版本,只是说有些是1。8显示啊,啊这里你看版本的是1。111的是吧。

对不对,然后这里的这图片上面,那那你可以看一下阿拉,他说什么奇U216U45,还有什么6U1327U一二,这指的啥意思啊,指的就是7U7版本,URE就是后面那个版本的编号,我们这里呢是JDK1。

8011啊,那就简称为8U11啊,能理解吗,所以说你看了这个东西呢,你要理解了啊,你不要说这个到时候看不懂啊,这什么鬼东西啊,6U就代表六版本的,这里可U,然后呢211和就是这个版本下面这个序列。

因为我们都知道啊,就像windows一样啊,它还有什么windows啊,win11是吧,SPE啊,SPR这种教法啊,就这个意思啊,对不对,那这个6U啊,6U就是1。6或者六。

这个版本意思啊啊十101呢也是这个意思啊,也11版本哈,第一它的序列号为一的,然后你看一下啊,在MIDJDNJN里面注入,这里面有个截止截止8U113,然后LDAP到哪里,接着8U191,对不对。

好,他就是个截止,那么这里有个什么区域啊,大家看一下,现在是这个版本是吧,刚才测试是没有问题的,那么现在我再换一下啊,1。8并里面的java是吧,来执行一个VISC,我现在这个版本是多少,版本是1。

80362,那么大家想一想这个版本应该怎么写啊,官方的一个写法就是8U312362,是不是这个写法好。

那是这个写法,我们看一下啊,那这里他是在哪个图片哪里呀,是不是应该就是这里都不包含了,这个是8月哦,123嘛,就数字对比嘛,362是大于113的,那这里呢你看啊拔于191,那是不是也大于这个地方。

也大于这个191,这里没问题吧,对不对,那么你看到我这里有个11。0呢,那是不是就是说8~11这里都行啊,不是这里啊,不是这样子的啊,它是区分版本的,就是你八版本你就看这里,11版本就看这里,你就说啊。

14呢17呢他这里没有写,就说没有反应,那就是没有反应,没有写就是另外的事情啊,你只要记住他这个写的词,就说在你的截止这个版本之前才行,或者说等于这个版本才行啊,如果说其他版本的话,那你就自己测啊。

一般是高版本的话就不行了啊,给大家解说一下啊,这个很明显啊,这个36R呢就明显在这个上面,好像是RMI的和RDP的都和它没有关系了,为什么你看RLDP的到这里嘛,拔于191也是大于它的362。

大于这个191嘛也不行,I来的在这里是吧,然后呢呃这个拔U113嗯。

这也不行呀,他也打给他的,那我们试一下吧,我帮你运行起来啊,那调用这个JDK版本是吧,你自己下两个JDK版本啊,怎么下,我等下会给他打包,这个我安装包的啊,你也可以从网上直接搜这个8111话去下载。

这个网上用来下载,对不对,有的啊,不要说这是什么,不知道怎么瞎啊,那里面的那就尴尬了,好我把它启动起来啊,那么重新来看一下,刚才那个JN点那个地方来啊,好我们继续来这里啊,看一下啊,登录小心。

嗯好我访问啊,那刚才那是直接把这个DJ复制上去。

就指引出来了,好吧,我现在看一下啊。

执行了有没有反应呢,没有反应,计算器没有弹出来,数据呢是有接收到,你看他罚了,罚过去了,但是没有反应,没有反应,是IMI的调为底P的。

也接触到了,也没有反应,计算机没有弹出来是吧,好那继续往下面看,这个疑点齐的是吧,试一下。

我们就说因为你实战中你不知道对方版本吗,你肯定都要撕啊,他这一期撕了一个。

还有这个,这也不行啊。

这不行啊,那看这还有这个。

诶这个可以啥情况来看一下吧。

这个中间这个为什么可以的,你看下它上面写的,他说的J1比K这个什么东西,然后是什么呃,top cut8加和spring put的1。2叉,In class ply,你可以看到他这里呢和刚才两个不一样。

刚才两个都有LGAP协议,他这个没有,其实就是说他这个呢并没有看JDK的版本,他看的是你是不是这两个符合这两个条件,那刚好呢我实施这两个条件是吧,我这里呢是用spring put的这个源码。

本身呢就是spring boot实现的嘛。

我们之前在这里看到过啊,那这源码我给给他看一下啊,那就这个源码,你看他那个介绍里面,它的实现框架就是这个视频铺的。

那是ing put的4。0嘛,对不对,他写的就是这个东西嘛,那个1。2,那肯定大于它了,不用说了嘛,那可以。

所以说这个利用呢你是要根据环境决定的。

你要使用这两个协议的话,它是有限制的。

就是不是说哎呀这个所有版本都行啊,为什么呢。

啊这里后面写到过说这个呃在历史漏洞里面,就是这个啊,就看13天的这个37天这个笔记啊,那后面你你没有写到过啊,你可以看一下13天那个笔记里面上几天,这个笔记里面有啊,30几三体内比心这里有啊。

他就是在高版本之后啊,你看啊他这个高版本之后啊,对啊,它这个里面有一些东西呢发生了这个更改啊,这是他的原因,这个原因呢我们不细究,我们主要聊原因,我们不用管他,我们更重要的是说呃他是如何绕过的是吧。

这个有没有绕过思路。

就是如果说哪一天这个版本是吧,不符合啊,刚好这个呢也不是spring铺的,或者说也不是这个什么tm cut这种东西啊,这个也不是不能用了。

那该怎么办呢是吧,这里呢就要看到这个参考文章啊,这个参考文章了,这也是高端的,则是要需要分析代码和之后呢。

看他整个一个调用情况呢才能决定的,就是后面那个我高版的那个绕过嘞,就是在哎大于这个高版本的,这是个什么89191上面的是吧,然后这个什么这个东西啊,其实我告诉大家啊。

呃如果说你要分析怎么绕过它的原理的话,这个还比较复杂,但是我实告诉你,网上那有现成的工具,还有现成名写好的啊,你这个网上这个文章的都是怎么说呢,都是分析文章,你如果说你要做一个安全研究者的话。

你可以去读一读,如果说你作为这个攻击者,你也不在乎那些东西,你只要学会怎么绕,那你就没必要读这个文章了,你只要怎么办呢,下相应的工具啊,下相应的东西,当个脚本小子对着玩就可以了,你分析的话。

这不是一码一一瞎子的事情啊,他是要跟那个连啊,然后呢去堆着去是吧,去触发一个就是你要用那个反射啊,去再去用,它,也要看那个目标对象里面有有哪一些这个类呢,能够调用来实现。

其实这个本身这个工具的原理,就是这个JNDI,还有那个什么反序化那个YS啊,网上的都有相关的系列文章,去分析这个工具的原理,就是为了弄懂这个东西,我们后续啊在讲这个呃分析练的时候呢。

会有一两次直播呢去讲这个分析的啊,那个时候呢你在做合这个高绕过方法的去看。

就会明白一些。

那现在呢我们只要了解他的绕过的思路,绕过思路就是我们说的啊满足条件,他的这个原理呢,其实就是看本身项目中的原始内,有哪一些去调用其他类型的去反射。

调用出来,就有点类似于我们昨天在讲那个反射一样是吧,那个黑名单绕过,不知道大家还没有印象啊,就是和那个呢差不多啊,这个呢就是我们说的个尖底来啊,那为什么要讲他我说过啊,他不是一个漏洞,也不是个什么东西。

我们理解它,第一个是知道这个mi和RDP怎么玩它啊,触发触发C1,然后呢知道它上面有个限制,这个版本限制RY限制到哪个版本截图,然后DP限制哪个版本截图,然后他的绕过方法一个呢就是可以看环境。

就是这里呢它支持还有一个spring布的那个logo是吧,你只要是spring布的一点200米以上哎,就可以用这个呢来尝试绕过这个高版本。

这是一类,还有呢就是我们看的分析两篇文章,这个呢现在啊没有时间也没有精力给他讲啊,后面呢会给大家说,要分析到这个工具的原理之后,这个绕过呢才能讲的明白,否则的话就给工具给你用用了,跟没用一样啊。

好这个就是我们说的这个尖底癌啊,简单来说啊,他就是一个为我们后续漏洞利用的一个管道,了解就可以了,既然你爱别人,问你是什么东西啊,他就是java这个原生的东西,用来提供这个远程方法。

调用一个接口里面呢比较关键的两个方法,两个协议就是这个RMI和奥迪P,它们有什么差异,就是我们说的调用它的时候版本有限制,然后他们具体一个是叫远程方法调用,一个是轻量级目录访问,你把这个记住就可以了啊。

好那么现在呢就来到今天的关键点了啊,就是不安全组件,因为大部分的代码审计呢,从本身的源码领取审计是一个方面,还有一个呢就是这个不安全组件学到这里,很多人呢思路都是糊的,都完全不知道。

这个学了好像和实战没有什么关系,我告诉你啊,是很有关系的,你把这个课学完之后,把安全开发课再学完之后,在后期我们还有代码审计里面还会讲,你把那个三个体系全部学完之后,你就会明白了,现在获得了不要紧啊。

我们呢也尽量给他解决这个疑问,你看一下啊,这个java里面这个不安全组件五大,哪个时间写入杰杰克和那个法师的JSON,还有个XX菌,我们先来解释一下这个东西是干嘛的,在java中。

或者说在任何开发语言中,高端的开发语言什么Python啊,这些东西都会有一个东西叫做组件,或者称之为模块,或者称之为叫这个哭这么一个教法,其实以哪种教法都可以哭,也是对的,模块也是对的,组件呢也是对的。

指的就是第三方的东西,在开发的时候,如果说你要对这个网站进行这个日志的记录,日志的记录的东西,那么在java中,你就可以选用log4J来帮助你去对任性日志,或者一些其他日志呢来进行操作。

那么如果你用到logo世界了,那么不好意思,logo世界包括历史漏洞,在使用的时候使用不当就会造成漏洞,关于它的漏洞的所有漏洞,大家可以商一下这个阿里云的这个什么这个,漏洞平台去看一下曾经报过漏洞啊。

一目了然,这是目前阿里云漏洞库收录的,为什么在这里看,不在其他漏洞公开网站上面看啊,因为这个fast的建设呢,就是阿里云官方出品的一个库,所以他对这类的漏洞呢收集的比较全。

这是目前已知logo世界的历史漏洞,然后呢有些呢是有POC,有这个什么漏洞,利用代码,有些呢是没有的,就是没有公开的,我们具体呢就是要看一下,打开一下之后呢,可以看一下点到里面去呢是吧。

可以看一下他这个漏洞的一个详情是吧,然后呢他会有一些相应的介绍,有些呢会直接告诉你是什么都不懂啊,有这个呢只是大家看一下啊,有些CV编号啊这种情况啊,啊然后呢会有一些大概介绍和他的一个版本,音响。

这个呢就是比较关键的,就是一个是看它有哪些漏洞,第二个呢就是看他的漏洞的影响,和有没有CV1的编号,并且在看有没有这个什么POC,指的就是说点零写好这个漏洞的测试代码,还有现在是没有武器库。

有武器库的意思,就是说有人已经把开发工具都利用出来了啊,就这个意思,那这里呢也是给你后期的来判断,你的代码和分析,在做这个百合申请的时候给你有帮助的啊,就是这个log4J。

那么呢还有像我们这个SHAO是吧,这些都可以在上面的搜索看一下啊,对啊都有啊,那这个呢每一个东西就不接了啊,主要介绍logo时间日志记录的框架,写入身份验证的框架,何为身份验证呢,用户的登录授权。

你在pp里面去写用户的登录授权的时候,去验证这个用户是不是你的这个管理员是吧,pp里面是怎么开发的,java里面就可以用这个框架集成开发,jack和JACKSON和那个fast JSON两个都是一样。

都是对JS数据呢进行处理的,对这个JSN数据进行处理的两个框架,就说你凡是用到这个JSN哪去数据的转换呐,数据的这个格式化呀啊都可以用到这两个框架,就不用自己的去写代码实现,还有个s stream。

就是java这个对XML语言的一个操作,由于这几个框架呀里面呢都有相关的接收数据,和对数据进行序列化和反序化操作,所以大部分广泛利用的漏洞都是返学漏洞,好我们现在呢先来用一个本地的demo。

把五个漏洞的本地demo看一下它具体代码,看完之后简单的浮现一下,把漏洞端进行一个测试,利用完了之后啊,我们就来用一个比较真实的一个源码案例是吧,看一下这个漏洞是怎么发现的,并且呢把这个东西结合进去好。

我们来看一下啊,这个漏洞的一个简单demo端啊,先看一下这个里面写的很清楚啊,看一下来,比如说这里的呢这个fast js他也说了,阿里巴巴的JS解析库,这是阿里巴巴自指自己的啊。

然后这里呢写了个这个long利用代码,你可以先点提交啊,他也没反应,为什么呢,你可以看到啊,他这里有个什么东西叫RMI这个东西,如果我刚才不讲,这里这根解压足够告诉你这里有漏洞,你也不会用啊。

你说讲了有没有用呢,看上去只是听了跟没听一样,第四你知道这个东西你碰到你才会改呀,你看这个呢他这个利用代码里面,你可以说用代码怎么写的,我也不知道啊,网上都有这种模型,你只要把MV放上去。

对应的把它修改就完了。

不需要你操心的事情,你看这1。8呢是吧。

我要放诶,改改这个我放这里来,我测一下来,我看下,就说我把自己改,它原来是那个嘛,他自带的,你该会改点,提交被计算器弹出了执行的呀,我本地环境执行计算器呀啊这这是代码呀。

你看代码怎么写的呢,我一个代码给你看呐,嗯代码把代码找出来,哎你们不要喊高端这个课前去安全开发课,我就上过了,你喊高端就是前面课你都没有看过,看看弯的啊,我只是说以前是给大家认识一下。

现在呢就是说啊把它利用,就是这里呢就强调的是利用和发现了,以前就是告诉他有这么个东西啊,前面讲安全开发,就是告诉他有这么个东西认识他,后面就是讲他的利用和发现了,在代码审计里面呢。

就是有个案例就是成品源码加深影响,这是循行渐进的啊,诶刚才那个跑哪去了,那这里啊,这个是演示是fast season,来,你看下代码端里面这里那库里面这是引用的库。

cm阿里巴巴fast test调用里面去接收这个content的值,所以我发送的呢response body接收content的值,发送过去,用这个什么JS问对象啊,去解析它就没了,就这么个简单。

其实就是说很简单,用到了发射键是库,然后呢有一个可控变量啊,这个空间呢用它去解析了,把它解析成这个什么对象,就是一个给他发一个JSN数据。

然后呢把解析对象应该发的就是JS的数据嘛,指数这样写了是吧,这是你自己写的。

这是个什么东西呢,我给他看一下。

你自己写的话,那就是这么个情况嘛是吧,直接换行啊,这样一自己写的话就这样的情况嘛,对不对,自己写就是这么一个数据嘛对吧。

这些就这么个数据,是不是JS和那个格式数据那方法提交,那就请求了是吧,没问题啊,你说这有什么难度呢,看上去就很难简单DEO。

但看明白了呀,英文库可控变量出现了呀,你可以说这就判断有漏洞了吗,难道有用它就有漏洞吗,不是的呀,还有版本的吧,还有版本呢看呢看他引用的版本呢,版本怎么看呢,一个是看项目里面的这个应用版本。

还有个呢就是看这个pom里面的是吧,在这里搜,对1。2。24,对不对,或者说在这里找也是一样的嘞。

是来1。2。24呃,然后呢你在抖动这个历史库里面发,直接省是吧,有没有包过这个版本都懂,什么这个1。2嗯。

2。68大于小于那里面的这个疑点多少啊,这是个1。2。24哎。

这里面都有,你来看看下这个呢,2017年就有个漏洞的存在,武器库啊,什么这个东西也有,点进去看一下呗,啊由于是官方网站啊,官方网站他就不会给你写那个POC,所以这个漏洞那就需要你在网上找一些浮现呐。

找些那种漏洞文章了,这个呢只是做一个展示那个什么漏洞呢,利用代码那些东西呢,那这里就是看不到的啊,他不会展示的啊,这个懂得都懂啊,他只会告诉你有这个事情啊。

好这个呢就是我们说的这个fast js是吧。

然后你再看啊,这个后面的啊继续往下看,我们把每个都看一下啊,看一下有个就是看到个代码的,知道了以后碰到就认识他了,就不要说是吧,碰到了都不知道。

看看这个啊,JACKSONJASON啊,你看这个对不对。

那这里呢是不是又是个LDP这个地址啊,你继续呀。

他要写LTP,我写个RM看行不行呢,把写的去了,贪了吧,对是吧,隔一样,你告底片二二都行,无所谓的啦。

会用就行,那这个呢是什么JXJXJX,然后你再看代码,看他这个实现,that cool引用收到了呢,com fast XML jackson co好实现的情况呢,后面就不用看了吗。

也是结束这个什么勘探的函数啊,还有参数值后面去解析啊,库呢是什么呢,来看一下,我们看下库啊,嗯是这个com fast哎,看一下,那就这个吧,那co2。1。2。113点三啊。

来看一下漏洞库,对一下,看是不是存在漏洞,打错了,哎不过他这里写的话就有点尴尬了啊,他这里面上面没有写版本,这你说有些查找起来也麻烦。

2。9点,你看这个就是你自己看到就行了,他的版本刚才看的是2。11。3。

这是2。9,那不是这个,你可以往上面继续往上面看一下,这个2。9的啊,是的啊,你自己找吧,这个我就不说了啊,你自己找或网上去看啊,只是在这里面找的根直接线网直接搜就搜到。

这是这个情况啊。

JACKSON的,然后你再看下面的啊,这是泄露的,你看泄露的泄露是什么一个登录框哎,为什么是登录框,前面两个不是直接提交,换啥情况,你看那功能点,那刚才演示的JSON是一个JS数据。

也就是说他接受JS数据,它进行进行序列化和反序化时,那造成这个漏洞节省和这个发时间,都是两搞这个事情的,那现在是泄露,他是身份验证的,身份验证的,我不刚说了吗,举用户登录这里啊,对不对。

然后你看他怎么用啊,你比如说我直接拿个漏洞零工具给他用一下啊。

这个漏洞工具呢那多的厉害的,你看到啊,就用这个4。0版本的好吧,我们最最新的这个工具箱里面的4。0好吧。

那这里呢是这个泄露的,你看这个反序和综合利用这个工具是吧,来你把这个用户名输,我给他砍一下,来把地址一抓好吧,先抓一个,随便登录一下啊,随便写,记住我把点上提交数据包,你属于包的哎,妈的嘴巴这里。

有个登录,那有个地址呢,把你复制呢。

放这来车,你看啊,他车存在现有框架,初始指定名思已包括,包括得到了检测利用率,检测到了执行条命令试下,What i mean,执行了DR执行,这什么情况呢,对不对,这什么情况呢。

你要说你用我看代码,我看一下,来看代码,SHO的是代码呃,代码里面的,你看一下啊,来应用的ORG阿帕奇SHO,这不用看的嘛,直接引用库满足条件了。

版本呢往上面找拖挖机的阿帕奇的泄露,那就这里呢1。2。4啊,1。2。4,对不对,版本呢你历史漏洞查,1。2。4,那这里你可以看到啊。

这还不是一个两个漏洞一大堆了,好吧,我们就不看了,对不对,那你怎么知道是不是泄露呢,都会有,我这里说了啊。

呃实战中的话,黑盒是怎么测的呢,啊我给他说一下,这个泄漏呢它有个特点,这个特点一是大家都懂,勾选了这个基注之后呢,他会有个特定字符,remember me是吧。

什么是每个2米啊,数据包里面啊,你看一下,在这里呢勾选这个机珠之后呢,cookie里面有个叫remember me的一个特殊字符,人跑哪去了,搜一下,好刚拿到这里看没,那remember me。

这个是泄露的一个判断特征,就是在这个数据包的这个cookie里面有这个东西啊,你记住啊,有这个东西要点这个记住我这个选项才行,它就会生成这个东西,然后这个网站呢如果说是java应用的话,那直接给盘里。

这是个泄露,这里有SHO,所以说SHO在黑河中的一个测试,想都不用想了,怎么测它啊,找这种授权的地方,何为授权呢,用户登录判断你权限的功能点,然后呢,在这里面呢去判断数据包里面有没有remind me。

如果有,那就是一个泄露的框架,你就直接用工具帮你泡,就完了,白和我就不说了,直接看代码啊,那可能又说了哎,这个发射JSON和JKJACKSON,那怎么判断呢,一种情况就是怎么判断,来我们来试一下吧。

就说笼统的判断,就比如说你这里点啊,它弹出计算器是吧,你看数据包,首先你要看请求的值,就是他常规正常的请求里面是不是JSN数据,然后除了这次数据之外,有些地方的话他还会有这个关键字,这个什么关键字呢。

就是这个叫fast jsn或者关键字啊,别给JSN,你就搜啊,有没有这个关键字,有时候呢在这里啊,如果有这个东西的话,那就是可能是的,能理解吗,就有时候呢你要看要看你看这个呢。

他这里写法都比较类似于这个情况啊。

他那个车法呢没有那个C罗那么特征,那么明显啊,这个具体的这个黑盒测试细节,我们在漏洞浮现的时候会给大家详细讲的,后面的还有多种复线,复线跟着中间简单啊,服务漏洞,这里面也会浮现这个漏洞。

而且都是那种成品的网站,当浮现的时候呢,你就能知道啊,黑盒中如何判定logo是J啊,SHO啊,jk jk son的是吧,还这几个他有些是强特征,有些是弱特征,弱特征就是说特征不明显,可能会有误包的情况。

强特征就像这个了,蟹肉就是强特征,只要那个东西那不用说了,就是泄漏,但这个什么JSJSON呢,fast JSON呢,你可能你自己去想想,你现在再想想,面试的时候,别人问抓如何判定他是泄漏啊,对不对。

他为什么问你这个问题,他不会问说如何判定他是不是什么JXJX呢,如何判定他不是local是J呀,因为那两个框架组件它是弱特征,你不能说看到这个东西就说是它,你只能猜测,那我去尝试。

而这个泄漏呢他是个强特征,或者你再问一句,说哎呀有些漏洞是吧,这个老问什么fast JSON不出网怎么办呢,这个什么SHO不出网怎么办呢,他有些问题呢,他问他为什么就是你这个漏洞有这么多。

他为什么只问他一个不问全部是吧,不出网,那用温度最多的就fast JSON不出网怎么办,他问这个问题,他怎么不说哎SHAO不输网怎么办呢,是这样的啊,这些问题他为什么说唉都是差不多的漏洞啊。

都是这个java上面为什么有些问题呢,他就问一个,他不是全部都问,不问其他的,是因为漏洞的特征,包括他的这个漏洞的形成都不一样,有些答案是一回答,就是那个真实答案,简单来说就是说不用看了就知道是他。

但有些东西呢它是有蛮多可能性的,所以他不好问这样的问题,他问的这个问题呢,你回答的东西呢和他对上了,他也不能说你对,也不能说你不对,因为可能性太多了,因为你学过这个东西,你就知道这个问题的所在啊。

你没有学过,你就会有这些疑问啊,好这个是那个两个东西啊,我刚才说了啊,就是因为你像这两个他这个特征呢太弱了,你无法通过那一个仅仅的那个条件去判断是它,但这个泄漏不一样啊,其实不一样,java应用啊。

哎一点呢,勾选那身份验证,那就出那个remind me,那基本八九不离十,就是削弱特征太明显了,他有这个强特征,那么你知道这个特征呢,流量分析的那个东西不就也是一样的道理吗,那别人问你流量分析是吧。

如何判定是泄漏攻击啊,你就把这个特征一说,那就是他的攻击啊,攻击里面就有它的关键东西呀,那就是它那就是它特征了,这不就是都呼应上了嘛,是吧嗯,好这个呢我们再看这个X4G啊,这个呢是一个也是一个解析库啊。

它主要解析这个XML的嗯,然后呢在1。4。16版本之前呢,有很多漏洞,然后你看他这个攻击的这个payload呢,大家可以看一下,就是一个XML语言的。

刚才这个fast JSON的攻击披露的就就是JS温数据,而这个XS菌呢就是什么那个什么,就是一个XL语言,然后呢你只需要更改一个地方就可以了,你看他这里有个命令cl e c是吧。

你比如说我改成个note,but就是我们的记记事本嘛,一点击提交哎。

记事本就出来了,是不是连提交漏洞计怎么出来,你看这样去理解这漏洞就好理解了呀,对不对,这个是做XML的一些解析的库,这两个呢是JSN的解析库,攻击payload呢就是JSN的数据,而这个呢是XML。

那就是个XML的数据泄露呢,由于他是授权的,所以他的漏洞产生点呢是在用户授权这里,那就不是在数据的这个发送的格式上面,那你说这个呢又该如何去判定,他有没有有黑盒中,如何判定有没有这个漏洞呢。

首先先确定java的应用好,确定好之后看数据包,数据包里面有看到他有接收XML数据,那这里你就可以撤了,你就可以撤了,因为他没有强特征,它只有弱特征,你只要发现它满足XML语言的发送和接收。

你这里就把PLOAD写上去撤,包括刚才那个什么JS问那些东西,也是这么个道理,除非说你有蛮强的特征是吧,确定他有这个东西了啊,那你就直接很细致测了啊,logo世界logo世界是什么呢。

logo时间是什么日志记录的好,大家想象一下logo时间是一个记录日志这个东西,那logo时间是一个记录日志的东西,日志记录它会记录哪些日记,那肯定就是访问的这个什么访问地址呀,用户的什么鬼信息数据啊。

等级就说你自己想想,你记录日志肯定是记录哪些啊,就是访问日志嘛,这肯定是作用所需的是吧,就调试这些运行日志啊,或者访问日志,这肯定是关键的是吧,他要是java里面呢用对日志来进行操作。

它就会使用这个logo时间,那么logo是J的话,日志既然是日志的话,你觉得这种漏洞它是什么车呀,黑河中的车法,以前刚爆出洛格世界的时候,黑盒中的玩法大约是怎么测的,随便测,什么叫随便车啊。

随便查啥意思啊,就是凡是有数据接收的地方,你就把PLOS写上去就完了,这就是他测法,你可能会知道是什么情况呢,就是因为你在黑河中,你无法预知对方会把哪些东西当做日志,哪些东西作为记录。

作为日志的调试和输出,所以你就没办法,就是随便插,就是我不知道我黑暗中,我不知道你会在哪里出现,所以我就什么用户的呃,这个用户名呐,什么这个这个这个网站地址上面呐什么的,用户图像里面的都查。

就凡是有这个接收地方的数据,你就查查什么呢,就查一个JNDI的一个代码,就查这个东西啊,就查这个东西,这个东西查对吧。

比如说我先给大家看一下,我查一个这个应用打码。

看见了,插进来点执行诶,执行成功了,那就是他这个那可能待会了,这他妈的这查这个有什么鸟用啊,我也不知道对方执没执行呢,执行也是对对方服务器上面执行一个计,计算器啊,执行一个记事本的没什么用啊。

我也看不到啊,所以呢大部分之前测漏个时间,一个漏洞是怎么测的啊,X对Y的一个除网就是底下是logo是吧,因为之前的还有人问我说底下log关了关了,那今天呢徐明给介绍个工具,这工具呢后面也会讲是吧。

一不讲呢,大家说哎呀又跟不上时代了,对不对,既然在工具包里面提供了,不讲一下吗,用这个YAKIT啊,其实八五数字里面有,但这个简单一些,我也不希望大家用那复杂的,他这里面呢是一个渗透框架里面好东西都有。

那你比如说这个DSLOG呢可以打一个出来呢,得多个啊,自己生成一个把dc1复制一复制是吧,一幅字怎么办呢,就把这个dc1改就可以了,就改成这个地址呢,点一下提交,哎这个没有哎什么情况没有吗,要注意啊。

这个r mi你这样写它不支持的啊,要换奥迪AB,把这个试一下提交,看到没收到了来收到了呀,那你不信我再换一个再给你看一下好吧,那我再生成一个来重新换一个来复制,放这来点一下来,我先看看我这没有的啊。

你看啊,我对着给看,免的是作假,那有了呀,这没动态啊,我是吧,当然这里还有很多功能呢,什么反连,那反连呢,你开个公网的来反连地址来,他也能勾出睡觉吧,那也出来了啦,反天回来了,1。

2的中午接到这好不好玩呢,好玩吧,还有这个呢掉链里面的js java的PYLOAD,来你看那我给看这点slog地址,你写个DSLOG域名是吧,这是生成一个写上来生成。

他就把那个原生态的反虚化数据帮你写出来了,然后格式格式,还可以把导导出成一个那个java文件好吧,这个后面会用到啊,海格总这个粘的一些情况啊,这后面都会用到,因为马上到时候呢要讲这些利用是吧。

是时候呢啊,这我用到的反面那个东西啊,还有很多功能啊,这个上面就不讲了,后面都会用的,国产平台的啊,这工具也是在最近啊,在前面半年的开始流行了啊,之前课程的没有,因为去年上的时候呢。

这个工具还没流行开来,所以没有教接手啊,这一期刚好冬季开始流行的时候啊,有人提到过把家读到课程里面去啊,在后面讲漏洞分析啊,漏洞利用的时候,漏洞发现的时候会把工具的详细讲一讲。

里面有些功能呢还是蛮可以的啊,就是漏洞扫描啊,包括这里集成一些有些东西啊,到时候会说包括这里呢,还有这个数据的一些对比,反虚化一些事情都可以在这里能看到啊,这有什么不会用的,这个图形画,你还说不会用啊。

来泄露的工具发射呢,它都支持那框架,你自己勾选,你需要扫什么就扫什么,傻瓜式的,这还不会用啊,自己选茶间,那这个螺丝巾是吧,用出来了有什么,是不是直接看到对外,那你要说你要强制性用这个迪斯诺克。

那也是一样道理,那我把DC复制粘贴是吧,那访问也是一样道理,那访问,提交刷新啊,是不是有了,所以说也没什么太多问题啊,这就是说明他DIY查询的呀。

他DIY执行的呀,待会执行,所以说我知道有这个漏洞,所以我在利用这个生出来这个payload。

让他调用出来,对不对,把打打出来,这执行哎,好吧,哎就有漏洞了,那把那个漏把那个把那个执行代码一改,改成你想要的,那不就是RC1吗,是不是,那讲到这里大家就明白了,你看啊,刚才讲奥杰伦DI这个猪的时候。

大家还不知道讲的有什么意义,现在看了一下,那这几个在利用的时候全部都用的是IM啊,什么啊,这个LADAP就是间谍组,你说不讲他能行吗,不讲他,你哪知道这个东西怎么可是个什么鬼东西啊,简单来说。

J n d i,就是为了让我们去利用这些漏洞的时候,那个漏洞立马让他去传输过去的,你没有这个东西,那就无法造成这个什么远程代码执行这些漏洞,就这个意思啊,所以这个里面他不是个漏洞。

他只是java里面一个东西,然后呢我们利用它把漏洞玩好,就这么个事情。

没有他的话,那漏洞就不好玩了,就玩不了了啊。

然后他呢有个限制,就是有这个JDK版本限制,就是关乎到对方那个应用的运行的。

JDK的版本啊,如果版本低,那就好玩。

那就随便乱搞就行啊,高高版本我们需要捣鼓,唉。

好,这个就是我们说的那几个五大组件的那个漏洞,的一个简单介绍,就大家的熟知了啊,基本上货网里面你去打的话,以前的打都是呢通过这几个漏洞啊,通过这五个漏洞呢去利用成功,然后得到一些全新的打的。

只要说java的很多都是这种打,如果说你要去打其他漏洞,那除非你对啊,大部分都搞不了,所以基本都是在历史漏洞去打,然后历史漏洞利用打的话就是玩这些东西啊,好那么现在呢我们就来看一下啊,这个这个漏洞啊。

在升级的时候是怎么分析的啊,是怎么分析到这个漏洞的。

好我们现在就给大家看一下啊。

首先呢把这个项目呢我给大家先搭建起来啊,怕有些人又不会搭建,所以我这边还是要演示一下他的搭建过程。

免得呢你下去之后要浮现搭建杂印不了啊,也是很尴尬的啊,首先呢我把源码呢拿出来,这也是应用网上篇文章啊,那个星球上面那个发现漏洞的东西,我把它的重新过一遍啊,他那个是视频啊,他那个是文章。

我们在那以视频的模式来讲解,如果好学的人应该是知道啊,这个文章应该也看到过,他香不跑哪去了,唉放哪去了,这里啊,这是那个源码啊,我把打开,我特地呀还把他没有做任何更改啊。

这个是那个项目的源码啊,然后呢先开始怎么做啊,打打开之后呢,先什么都不用管它,先maven先给他可伶一下,再隐私多一下,这个时间如果要记住啊,这个影视多的时间可能会有点长,这个时间长短。

那是根据你这个当前的网络,和你这个maven的那个圆决定啊,大家呢一定要配置好好,这里呢我就已经完成了啊,这个maven是多的已经完成了,可能是我之前呢已经没粉了,一下好,搞完之后呢。

接下来就是要修改数据库的一个配置,这个配置呢他引用的是my babies,其实他这里呢还存在my babies的注,由于上节课我已经给他审计过my baby那个注,这里呢就不再审计这个东西了啊。

然后这里这个数据配置这个端口呢,自行呢不要占用啊,自行修改,这里有个数据库啊,应该是有MYSQL数据库名呢叫tomorrow的啊,这个tomorrow dB数据库名把它进行修改一下,改这个东西改完之后。

接下来啊我们呢就采用自己的pp study,这个自带的数据库,把它启用起来,啊这里的MYSQL是启用的啊,启动了,然后呢再用自己的这个连接工具啊,把它连一下,连上去之后啊。

然后呢点击这个什么创建这个数据库名,或者呢直接执行。

最好是先创建啊,直接执行哪个文件呢,就是这个项目里面的那个circles。

就是项目里面sex有个D文件一执行好,执行完之后,这呢就有这个数据库了啊。

你看写进去了啊,那么就OK了啊,把这里改改完之后呢,进行一个保存啊,保存好之后,这边呢一旦这个maven呢in store之后,这里就亮了啊,那直接点击开始就完了,没有什么操作的啊,很简单。

因为前期配置呢这个项目已经给你配置好了啊,只需要改数据库密码,把SQL文件导入进去,然后呢眉粉把该用的库下载下来就行了。

其他都不用管。

好启动之后呢,就会是一个本地的808088端口,我们来给它打开看一下,好地址就是这个tom。

啊这就是那个项目的地址,一个仿天猫商城的一个java写的啊,这个地址呢你是可以这个看到这里面的啊,看到这个这个地址里面,这里应该有写啊,地址访问配置录音啊,这里呢就是根据自己需要啊。

我这边默认是tomorrow啊,所以我访问就是端口呢加上tomorrow啊,你如果说这里改了,那就对应改一下啊,这个不用管它了。

好这个就是那个写好的那个java的那个啊,就是一个java的那个tomorrow的那个商城啊。

然后这个有什么漏洞啊,我们直接开始整啊,首先呢我们要审计五大组件框架漏洞,首先我们这里该如何判定啊,我们来看一下之前的代码段,之前的代码段啊,打开之前那个漏洞代码端,我们根据刚才学习到的来去对应。

今天的课程来讲,比如说我们刚才学习到的这个什么这个fast建设,对不对,它的解析是引用过了这个库,然后呢调用这个函数内的函数,是不是,我们先来看一下它这里有没有引用这个库,有没有这个函数,直接搜。

有没有函数就完了哭了,我们等下可以再看好,在这里全局Ctrl shift加F全局搜索,搜搜到之后呢,可以看到,这里呢有四个地方存在,然后你看啊这里是有啊,打开一看要找这里,后面是有值的啊。

这里明显看到这里是有值的啊,打开看代码端在这里,这个是它的变量啊,这个是它传入的值,这个值呢我们可以把它选中,看一下它从哪里来的,大选中啊,看是从哪来的,来,从这来的啊,对就这个地方买这什么来的。

看一下代码的叫产品属性JSN呃,这里是叫respond parties,就是我们spring put里面的什么接收参数嘛,就是个参数值请求路由了,可以往上面看ADD me下面的product是吧。

添加产品信息,知道了哦,那应该就是后这里请求路径是艾德米,那应该是后台里面那个请求路径,然后是添加产品信息的时候,接收的这个参数值为这个这个名字,对不对,然后呢结束完之后呢。

在下面代码里面呢用这个介词呢去把它解析了,好,我们来看一下是不是有引用过fast js呢,在这里呢看一下BO,搜一下发射接收,的确有用过1。2。58,那自己呢再去网上的漏洞库里面去对应一下,有这个版本。

有没有包括漏洞,那这里呢很明确告诉你有啊,也不用看了啊,不用看了,那么这里呢知道了哭,有用过函数有调过,我就直接浮现来看一下。

为了这个效果提现,我用虎虎打开吧。

用户不打开好吧,因为用其他的浏览器呢,等下要抓包的啊,怕麻烦,80088,什么鬼啊,怎么打,还是这个两方事情帮我写错了吧,哎是不是这个我把那个先暂停一下吧,我说他妈先暂停一下啊。

可能是那个监听的那个端口占用的问题,都踩不,代理的问题应该是啊,我这里开代理,再把代理先开一下,你们不要老说翻车他妈神经病啊,这他妈处理问题就翻车,翻车说习惯了,简直是,来监听一下端口啊,四个8万。

打开来,好了啊啊登录下后台,因为他是后台的嘛是吧,后台账号密码,那可以看下数据库,123456是这样密码啊,好这里呢我们看一下啊,呃他说是艾德米的那个product,那个地址其实是所有产品里面啊。

产品里面的地址信息呢,就这个大家可以看一下,你不知道的话,你直接访问它也是样,包里面扩大的PRODUCT嘛,就这个东西吗,只是这里显示不太好是吧,就这个了,所有产品这里信息了,你没想到啊。

你在数据包里面的网络也有的访问,对吧,那这个地址,然后呢你在这里看也是一样的,先求地址,他不扎特好了。

这里那代码端,这里面看到的是这个,添加添加产品。

然后添加一下试一下啊,我们来添加一下,试一下,添加个产品随便先写一下啊,写一下,接下来装个数据包,抓一下数据包,好先把这个以前的都删掉,来刷个数据包,提交一下,保存成功,看数据包里面啊。

来请求地址post,来发到这里来看一下,是不是这个值啊。

来对应一下,新旧泽,哎跑哪去了,在这里啊,哎这里了,是这个,那刚才那个这里的不值嘛,对上了啊,就这个值嘛。

怎么办呢,发射件是刚才漏洞多了,单怎么实现的,刚才弄这个要怎么实现呢,把重新启动起来,开下来,就这个嘛,跟着进去看一下啊,直接把那个payload能呢在这里测一下,发起接生是吧,这个这个漏洞大不大。

我们先测一下怎么测。

看一下他对带不带Y就完了呗。

其实那都是引用一个类了去调用它来测一下的。

来。

就这个和那个一样的啊,没什么太大区别啊,都一样的,就说这个是先测带Y啊,再说这个执行,因为我们要先看他能不能带Y,所以有没有这个漏洞,因为你你不可能说一下子就执行你一家啊。

哎跑哪去了,来放这里,那这个地址呢我们就用这个东西呢生成一个了,生成个底是log啊,免得用网上的老老卡老卡是吧,重新生成一个TC替换来看一下这些没有勾,哎什么情况没反应了,哎有了哎有了卡了一下。

不要紧呀,没有翻车,来出来了,那不行,再试一个,你可能说我为什么要用这个,不用叠slog,不说了,我他妈的之前用金个螺丝的那内鬼啊,他一直访问,搞得他妈我都不知道成没成功,所以我就用这个了。

我现在学聪明了,再访问一下哥看一下啊,那正面一访问,你看这面值对应下,他有点帮啊,来出来了是吧,这边完了,这边就能收到了,发射建设出来了呀。

再来看其他的有没有呢,继续今天还学习过什么logo。

4g logo,4G的代码是这样写的,来local local hero是吧啊,然后引用LOVLOGC好,我们来看一下这个代码里面有没有啊,数一下,把这个漏洞代码的那个推下,一搜哎呀没用,啥情况啊。

要注意啊,L是如果说报错输出,还有一个叫info infor呢也会造成,那这里有info有啊,有对应波也会造成啊。

不是说只有gr,刚才那个也是一样的,那刚才放JS呢,你可以搜这个。

也可以搜这个,他们两个都可以,那这个也是logo in for和logo error,都是搜豆干肉,Dol input,搜到了搜看这个吗,是不是这个啊,这个是不是啊,要不要看它啊。

大学的这个东西看不看不看,为什么不看呢,没有变量啊,你看它干嘛呀,它输出就输出这个东西没了,我要找能够有控制地方的,你看那个弄代码端来那个学了这么久,你应该知道这是变量啊。

可控变量和调用地方才能造成一个漏洞,学了这么久,连这个都不明白,那就是白学了,大哥怎么说,这个是不是对不对,好你可能说的这里还有个这个啦,Adm id,这个要不要啊,这个行不行啊,啊为什么。

我等下我等下先打开啊,再锁定一下java文件吧,来为什么这个和这个呢,这几个尤其是一个学这个和MD行不行,我们大家看一下,先来观察一下啊,这个IDBIWB从哪里来的,看一下啊,是不是控制过来的。

i iv等于什么千格的米里面的C型过来的,哎这个呢看上去也不知道能不能控制它是吧,再看下面这个,排序都不排呀,他妈的真是烦得很,啊你看这个有个这个这个有什么获取图片文。

声明这个值那个有输出这个字怎么来的,从file里面得到的一个value,这个如果说你有需啊学过java的文件处理的话,应该知道这个呢是获取文件名的啊,获取那个FINNAME值的,然后这个又从哪来。

finally又从哪来,从这里参数过来的,应该是接收文件的一个上传,上传里面的文件名获取过来的,然能用来打印他就知道了呀,我就上传个文件名,把名字改成payload就给撤了,能理解吧。

这就很显然就是我能够控制它这个从file里面来,file里面得到文件,b file呢从参数这个呢买过来的rise respond party,参数值过来的嘛,请求的路径呢也知道了,说是管理员头像上传。

知道了官员头像上传,这里路径是这个文件名里面得到文件名,得到之后呢,用这个lologin for去打印logo世界吗,我搜一下是不是有logo时间啊,往上面看一下代码,但里面有没赢过logo世界呀。

是吧,哎这里没有看到有没有呢,来看一下这里有没有啊,logo是JS这个看一下这里屁股里面搜,这里有ALLOCAL时间呢,是是是这里有的库里面呢在这里搜啊,来录个时间,8。0。10,那不用说了呗。

啊有没有漏洞,网上查呀,行了啊,那地址知道了啊,地址在哪里啊,在找个地方。

这应该是后台的嘛,来我直接把访问到请求到这来,唉请求之后为什么不能直接访问呢,那可能是吧,需要你自己呢去点一下这里吗,账号管理这里看这个路径是不是那个路径,我们确定一下,刷新一下。

看一下R请求这个点的时候,这里啊,这是这个触发的这个OCCT是吧,然后这里有个图像,我点一下它图像上传,我看一下是不是啊,保存成功,哎呐哎妈的个锤子啊,更新了啊,刚刚看到了是那个路径啊,这个路径啊。

更新图片还要我这个重新登录,呃你们说保持我知道啊,保持就是把那个日志保持嘛,那其他浏览器我这个浏览器我懒得调了啊,大家知道就行了啊,你可以在这里看到,应该这里有历史数据包能看到的,抓个包也能看到的啊。

有那个录音地址,那不是的呢,刚才提交的那个post包呢就在这里嘛,就这里啊,因为他直接割的访问,他访不了,他要post提交,他这个呢是也是post这个数据,post请求是路由地址。

然后解释个FANAME值嘛,他这个地方就显示FAM值,就这个file里面的这个得到这个,这个是得到那个获取的文件名,把这里的打印打印的啊,哎好。

其实这里面还可以检测有没有文件上传漏洞,但这个不是我们重要的啊,我们主要升级这个不安全组件啊,这你看把水包呢给他发一下,发上来,就这个地方嘛,改这个地方,那我们试一下吧,接N底来先代Y1下。

之前测试在这里吗,测的吗,怎么测,就这样测法,现在测试下带Y来重新再生成一个文,到这里,DIY搜一下,放个难执行好,这个是能够测出来的哈,我们来看一下,刚才那个才要把这个配置再换一下,不知道这里啊。

来到这里来来测一下,改改完之后呢,等一下go,哎啥情况没有啊,什么情况,哪里写错了吗,还有哪里错了错了吗,来额请求这里那是哎哦,我知道了这个刚才那个数据包没有登录啊,所以包没有登录。

所以我要重新抓个包啊,我首先把那个包抓到吧,抓到之后呢,再给他在这里测,直接抓,好就这里嘛啊哎就这个地方啊啊多写点啥了啊,就这个触发这个地方,所以把payload呢放在了测,勾看这里有了没有毛病。

有了有了之后好测他有没有RC1了呀。

嗯撤了,打开这里,1。8的给我扯起来。

执行咋回事弹呀怎么不弹了呀。

不行呀,换一下,继续往后画,哎妈的搞错了啊,重新来。

CTRL加C把这个暂停了,执行谈呢没有弹。

盒子。

谈呢还是不给我弹。

不是妈的还是不给我弹。

数据都接收到,收到了,就是不给我弹,弹呀还是不给我弹这个呢,诶这个弹为什么呀啊为什么呀,这我不讲前面的,你知道这是为什么呀,为什么呀。

来看项目的版本的版本是哪个版本呢,八版本,这个八版本是这个里面自带的,打包进去了,不是用的,我电脑上面就这个项目自带的,然后我现在给你看一下啊,他这个自带版本我怎么说呢,也不好把他弄出来的啊,呃这个1。

8呢,就是我这个呢你看调用运行版本1。8,这个版本呢我给大家执行一下呗,这个版本是哪个版本,杠vs哪个还有哪个序列的1。8。36啊,那不就和刚才测的一两吗,事情了吗好,那为了验证猜想。

我现在呀把这个项目呢给他搞成这个的,调用的是1。8。0。112应用,确定暂停重启,好吧,那我现在用的是啊,1。08011哦,好确定啊,重启,是吧,来确定一下啦,加用的是1。112的啊。

没有毛病,对不对好,那我们再来试一下,先把这个包呢来好好重新来访问好,现在呢就是换了一个JDK的环境,启动这个项目的,再来到刚才那个这里来测一下啊,哦同样也给抓到,哦抓到了放进来了,直接撕了。

刚才这个是用这个成功的,那么现在我用这个,这个是刚才不成功的啊,这两个是都不成功的啊,来看这个了。

得把PILOTE拿出来,唉算了算了,我直接放这里吧,免得他妈的搞什么假事情来替换一下啊,这个包吧,哎看下哦,好这是这个一点确定一下啊。

来这个的啊,1。8了啊,刚才这个不行的啊,go行不行行呐,为什么行呀,项目是用这个JDK第一版本加载的,讲杰伦杰人抵押出路讲的有没有意义呀,那你说有没有意义啊,你说有没有意义。

你神经病啊,没有意义讲,那干嘛,明白了吧。

那么大家就会问了啊,这种实战中怎么发现呢,我们先抛开这是后台,假如我是个前台呢,是不是实战中我怎么发发现这个漏洞了,是不是,logo世界那就不说了,实战中就是乱插就完事了,因为太你不知道他哪里结束。

哪里输出,你不清楚,所以你乱查,13岁就是乱杂,那刚才那个什么fast JSON,那还不明显吗,之前那个数据包都看到了呀对吧,之前那个数据包测的时候,是不是他这个数据包就是一个呢,这里都写到了关键词。

求JSN,对不对,而且这里发的数据也是接生数据,你就知道了,话可以就可以在这里设呀,对不对,java型网站的他车单就是这么个流程,他因为他是弱特征,所以你只能找符合条件的地方去测,那个时间呢随便测。

那假如说像现在啊,假如说这里有个用户登录账号,这里啊,这里他用到的是SHO,对不对。

那你这个用户登录这里就可以测陷入了,所以说你自己呢要把这个白和黑盒的,自己要思考,我没有讲,不代表说你就就回答不上来,你包括现在呢我把学完之后哎,面试官问你说哎呀这个什么法子,健身不出网怎么办呢。

来我先给大家看一下文章啊,你看了文章之后,你再看这个上面的啊,先先看这个啊,不错网的通用方法,你只要记住回答这三点,即使回答的不精准,不是他想要的答案,但是至少别人不会问,不会认为你是吧。

这个完全不知道哪三点啊,不会写,你只要记住关闭,不能起诉,第一个就是diva查询,这是无,这是任何东西都使用的答案,只说diva查询呢接触的是DNS协议,有些网络呢有些网站或者说这个目标呢。

它是不支持DA协议,这个DLC是否支持,怎么判定内网的课程的时候会详细讲,就内网里面会详细说什么除网协议,那个那个就是要判断它出不出网,就要会测各种协议的书啊,什么DNSS啊,ADP啊,这鬼东西是吧。

所以很多字典呢它都是通用的,我们现在学挖宝,你提到这个字典,内网里面的也会学它,或者说你把现在学好之后呢,你再学联网,到时候说什么除网协议你就明白了,是啥个意思,就是看他除什么网除网。

那就是说对方有网络限制,有防火墙限制了某些协议的除区,所以常规呢就会让他去DSLOGO,为什么呢,因为DNSS是一个解析协议,就是说把域名的解析是IP地址这种协议,这种协议呢一般防火墙不会把它关闭。

就是因为他可能有网络域名,如果他关了,他自己都不能解析了,所以呢他一般会放心,所以这就造成了大部分的这个不触网去判断,就会走这个DNSS协议去判断,就是看他能不能解析,就随便让他去请求个域名。

看能不能解析,所以既然是logo判断DIY查询,这是一个万变万变的一个答案,就是你任何东西只要说什么不出网啊,什么鬼啊,这个不回血都是这么一个答案,直接这个问题可把回答上,那还有一种就是我们说的啊。

如果说这个被限制了,有些人呢就会回答这个答案,就是把比如说RC1是吧,把这个执行结果把它写入到静态文件中,我们再访问他不就行了吗,就说你不回弦呐,这个不出网,对不对,那我怎么办呢,我就执行一个命令。

这个命令,那就比如说写个写个一啊,写个R写到一个JS文件中,然后呢你再访问这个JS文件,存在命令执行成功了,就知道有漏洞,这也好理解吧是吧,更专业一点的是吧,我不写文件,假设文件没有写入权限呢,对不对。

我写到自己的请求包里面去,就是把结果呢把它回旋到这个请求包里面去,相应注,对不对,好,然后呢这是这种通用答案,如果说对方比较专业,问你高端问题,问这个发射接收,不说网怎么利用。

这是高端啊,你再看高端答案,你再对比我们今天讲的那几个通用答案,瞬间就明白,你看啊他说的什么这个写文件写外修不出网。

如何利用写文件写外维修,这不就是我们那个写文件判断会写吗。

命令执行内存嘛,这不也是那个道理吗,后面这种spring的什么echo啊,怎么看的,什么阿比斯,这这个东西就是说他这个漏洞在利用时候看啊,如何去写命令执行,写内什么,就根据这个环境决定。

然后至于这么写文件,写web show mini执行内存嘛,这都是属于不除网的时候去判定这种方式,只是说他这种呢就是把直接利用了,前面的就是先判断后再利用它,这个就是直接利用了。

直接利用了就涵盖了个思路啊,具体过程那你就继续看这看不看懂,那就那是你个人的技术问题了啊,但是这个答案和这个回答要回答上,因为你有这个思路,你才能往下进行,连思路都没有进行个毛啊。

所以老碰到这样的问题呢,你就想到我说的那个三套方案就完了完了,往上提,你不管你懂不懂,你先回答再说太阳物,再问细节,那是你自己的知识储备了,那没办法,那就考核技术了,那如果说那个能回答上。

那妥妥的中高级的,那不用说了啊,把细节点强调到位了是吧,就杂种环境适用哪种情况,说的一分毫不差是吧,搞懂没啊。

那就妥妥中高级了,那要是把每个漏洞的原理,和他的东西都分析到位了,你脑海中都有那个思想概念,都每个东西的那个是吧,就像我们今天说的,比如说是GDI啊,他有什么差异,就是高端低高版本,比如说别人问你是吧。

IM限制在哪个版本之前,你都能回答上,你说别人还有什么理由说你呢,对不,别人说尖底来这个阿埋是吧,是叫什么名字,是干嘛的,对不对,你能回答出来好再问你是吧,这个猪的时候限制哪个版本,对不对。

你有个大概区间,你回答上也行啊,你要是直接精准到没哪个版本,或者给到了后面的这个解决方案,你说这回答这还说啥呢,对不对,安排安排直接安排。

好就说这么多了啊,今天知识点就讲这么多了啊,下节课呢我们再来学习java的这个框架漏洞。

和他的这个反序列化了啊,加固啊,我是加古是吧,我还有问怎么加固了,还好不是问这样的问题啊,我跟你说这个加固也是这个万有档案啊,打补丁的升级版本,这里面的不用问的这个事情啊,你要专业点。

就是针对性的那种什么黑名单啊。

啊正则表达过滤呀,什么加一些WAF呀,对不对,那通用答案就是升级版本,打补丁,就这两个事情,好今天就说这么多了啊,大家有问题赶紧问啊,没有问题我就瞎了啊。

这个工具箱里面呢有很多东西。

那前面呢一说到这个YAKIT这个工具啊。

我就想起一件事情,想有什么事情呢,就我隔一段时间就有人问到一个问题,有没有知识点呢,我真是服了啊,字典发一下呀,这个里面就有啊,你就不要再问了,你看这里面的字典都有了,自己用了呢。

网贷这个工具包里面都有,包括前两天还有问有没有什么cs插件啊。

我也是服了啊,有些人能把这个工具下下来。

他也不看,他也不管,他就看上面有什么东西,就是什么东西,我告诉你它里面含有很多东西,你比如说他这里那个啊,这里面那个COMMOJK的那个什么鬼,插件里面都有,只是他有现在没有加载上去,你自己要灵活。

你打开了目录,你就不会看一下吗,哎呀难怪说你这学东西就是学的慢,你看这里啊,他这有个cs的这个工具,对不对,你看啊,比如说这个长线的,他这打爆了呀,还有note9。3。0,这是网上还收费的。

有人老问哎呀,有没有9。0后面的版本,这别人都给你发了,你老文自己从来不看,真的是无语。

自己细心一点,你会发现你学起来会更简单,你从来不思考,老是问,连我把那个学习说明给他了是吧,连我那个笔记我都说了,网盘地址在这个下面都不知道,还问我那个当天的资源在哪里下载。

我有没有发,哎呀,真是难为你了啊,你说这咋学得好啊。

他学不好是有原因的,一点都不操心嘛。

自己花钱都不操心哎。

好今天就说这么多了啊,大家有问题赶紧问啊,没问题,我瞎了啊,命令执行回线请求比C小应,这个怎么弄,不太明白,java里面比较难读啊,PPT里面好,java里面要这个写到那个ADP回血里面去。

要改那个这个实现起来比较麻烦啊。

就简单来说呢,他就是利用反射啊,就像这里呢讲过spping put的时候呢。

他有个respond body嘛,就要改写这个那个回血那个包,它不return吗,要改一下这个地方啊,让那个写入数据呢,把这个改一下有点麻烦啊,你要用那个反射,那还有调试代码,那个实现起来比较麻烦。

对啊,你看有些人的难呢,他还会善用搜索,会搜是吧,会用这个什么文件搜索,比如说哎我找不到支点了,我搜一下知识点诶,这也有了呀,哎,好今天就说这么多了啊。

不过问题我就说了啊,搞了拜拜了啊,我给他打包一下啊,工具箱里面这个工具都有啊,包括什么经验底啊,那些东西呢,这工具包里面都有。

4。0发一下网盘都发过,前面都发过啊,不要网文件问题不罚。

早就被骂了啊。

好就说这么多了啊,下了下了啊。

标签:那个,这个,java,小迪,一下,2024,漏洞,二十四,这里
From: https://www.cnblogs.com/apachecn/p/18439962

相关文章

  • 小迪安全课程笔记-2024-二十-
    小迪安全课程笔记2024(二十)P55:第55天-XSS防御&HttpOnly&CSP&靶场工具等-逆风微笑的代码狗-BV1Mx4y1q7Ny其实有三个,一般这个XS2的防御的有三块,我们主要呢是讲后面这个最后一块的,这最后一块呢还有一些文章可以做啊,前面这个什么CSP的策略啊,什么hpoonly啊,虽然说也能绕过。也......
  • 小迪安全课程笔记-2024-八-
    小迪安全课程笔记2024(八)P27:第27天-PHP应用&TP框架&路由访问&对象操作&内置过滤绕过&核心漏洞-逆风微笑的代码狗-BV1Mx4y1q7Ny讲这个P1P开发的最后一讲了啊,讲了之后呢就要来到JS的开发了,PVP的最后一讲了,讲的是这个框架类的,对讲的框架呢是这个SLEPB,虽然呢他有其他的框架,但是......
  • 论文速读记录 - 202409
    这次是KDD2024专场。目录:DeepBag-of-WordsModel:AnEfficientandInterpretableRelevanceArchitectureforChineseE-Commerce【词袋模型和语言模型结合,构建可解释的相关性计算方法】UnderstandingtheRankingLossforRecommendationwithSparseUserFeedba......
  • 图形视频处理软件Adobe After Effects(AE2024)软件下载安装
    目录简介软件特点下载推荐硬件简介AdobeAfterEffects,简称AE,是Adobe公司推出的一款专业的图形视频处理软件。它广泛应用于电影、广告、电视等影视制作领域,特别是在视频特效和后期制作方面。AE以其强大的功能和灵活的操作,成为设计和视频特技领域的首选工具,适合电视台、......
  • 2024-2025-1 20241422《计算机基础与程序设计》第一周学习总结
    这个作业属于哪个课程2024-2025-1-计算机基础与程序设计)这个作业要求在哪里2024-2025-1计算机基础与程序设计第一周作业)这个作业的目标快速浏览一遍教材计算机科学概论(第七版),课本每章提出至少一个自己不懂的或最想解决的问题并在期末回答这些问题作业正文2024-......
  • 学期:2024-2025-1 学号:20241406《计算机基础与程序设计》第1周学习总结
    |这个作业属于哪个课程||https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP|这个作业要求在哪里|https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP/homework/13276|这个作业的目标|课程概论,工业革命与浪潮之巅,信息与信息安全,计算机系统概论,计算机安全,计算机的限......
  • 2024-2025-1 20241319 《计算机基础与程序设计》第一周学习总结
    作业信息这个作业属于哪个课程2024-2025-1-计算机基础与程序设计这个作业要求在哪里2024-2025-1计算机基础与程序设计第一周作业这个作业的目标锻炼我们的自主学习能力,让我们对接下来的学习有一个基本了解,同时也让我们能更加迅速、深入地学习计算机相关内容作业......
  • KubeSphere 社区双周报|2024.09.13-09.26
    KubeSphere社区双周报主要整理展示新增的贡献者名单和证书、新增的讲师证书以及两周内提交过commit的贡献者,并对近期重要的PR进行解析,同时还包含了线上/线下活动和布道推广等一系列社区动态。本次双周报涵盖时间为:2024.09.13-09.26。贡献者名单新晋KubeSpherecontribu......
  • 2024-2025-1 学号20241306《计算机基础与程序设计》第一周学习总结
    2024-2025学期20241306《计算机基础与程序设计》第1周学习总结这个作业属于哪个课程<班级的链接>(如2024-2025-1-计算机基础与程序设计)这个作业要求在哪里2024-2025-1计算机基础与程序设计第一周作业](https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP/homewor......
  • Adobe Premiere Pro PR2024视频编辑软件下载安装(附安装包)
    目录简介软件特点下载推荐硬件配置简介AdobePremierePro(简称PR)是由Adobe公司开发的一款专业的视频编辑软件,广泛应用于电影、电视、广告以及网络视频等多个领域。PremierePro以其强大的视频编辑功能和高效的工作流程,成为众多视频创作者和影视制作团队的首选工具。 ......