小迪安全课程笔记-2024-十八-

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

P50:第50天:PHP应用&文件包含&LFI&RFI&伪协议编码算法&无文件利用&黑白盒 - 逆风微笑的代码狗 - BV1Mx4y1q7Ny

啊今天呢是讲第50天了。

这个前面已经删了很多内容了哈,今天呢讲一下这个文件包含这web1块的文件,包含啊,这个文件包含呢,我们是以这个PPP去讲的,但实际上啊这个在其他的脚本中呢也有,但其他脚本中比较少见呐,pp是比较多的。

java里面的也有,但java也很少见啊,DNET也有,当然也很少见啊,基本都是在app里面去做的这个漏洞,我们前面几节呢是讲的这个文件上传的,这个文件操作类的安全呢,有这个上传的漏洞啊。

有这个文件包含漏洞,那还有这个什么文件读取啊,文件下载呀,文件删除,但像这个删除啊,下载呀,包括这个删除呢,这个呢这块的安全问题呢,呃也是比较少的居多的,还是商权和包涵这一块的多。

我们讲的话是从两个方面讲啊,一个是从本质的这个白盒里面去分析它,就是说有已知代码呢,像这个CMS的挖到这个文件包含漏洞这一块,然后还有一个,那就是我们这在这种CTF修的一些这种啊。

CTF的一些这种题型里面呢,喜欢考这种文件包含,然后呢再就是结合我们实际应用中,在这个黑盒的情况下面啊,有一些这个文件包含漏洞呢,它是如何发现和如何探针的,这个是我们这一个本节课的一个支点啊。

其实就是说现在解释一下这个文件包含的意义,然后呢,再来说一下这个文件包含在黑白合这两块的,一个利用的一个情况,从这里一个利用里面呢,也分了很多利用的一些方法,利用的时候呢。

也要根据这个当前的环境来选择合适的利用,这是本节课我们讲的一个终点啊,好首先呢我们先介绍一下什么是文件包含啊,这个文件包含呢,我们先要解释一下它的一个产生的情况,就说为什么要有这个东西。

那其实文件包含呢就是在这个开发中啊,经常啊我们前面讲过这个安全开发,大家应该知道啊,就有时候呢你比如说你写了一个函数,或者说写了一个定义的一个东西的话,那么你在用经常要用到这个函数。

或者定用到这个定义东西的时候呢,你不需要再次编写,你只需要呢用这个包含这个概念呢,把这个写到写函数的那个文件,那给它包含进去进行调用,那么那就可以享受这个练写的一个过程,它其实呢是在开发中呢啊。

是为了这个省去一些这种操作的啊。

嗯具体呢给大家解释一下啊,我们前期在讲这个pp开发的时候呢。

有讲过那个java开发的时候呢,也有这个东西啊,其他东西基本都是概念啊,包括你在各种什么C语言里面的,都有这么这么一个东西,就是一个包含的意思啊,在前期我们自己写的那个相关代码哈,你看到呢。

这里面有很多代码,比如说我们当时呢去写这个写这个文件查询呢,那模拟那个SQL注入的时候,大家应该知道你像在这里呢有config pp,然后这里要定义好这个什么数据库的,这个账号密码。

然后你在这个数据查询的时候啊,你如果说要调用这个数据库查询的时候呢,当时呢是用这个encoder去包含这个CONFIG,那么也就是说这个CONFIG里面的这个diva的,就被享用。

那这个呢就是一个典型的文件。

包含了一个使用,这个漏洞又是产生在哪个方面的呢。

啊就是说这个文件包含的,其实是程序开发的一个省区这个繁琐操作的啊。

你就写这个东西之后呢,就不需要把再把这个代码那copy到这来了是吧,因为如果说你要用的话,你就把它写到这来哎他就知道了是吧,如果说你用的这个包含的话,那就可以省略这这行代码了是吧,就可以省略这串代码。

这个很好理解啊,这个是包含,然后呢这里不是有个包含的这个文件名字吗,有这个文件的这个地址吗,咖啡给你pp是吧,如果说这个config pp呢他是一个什么,它是一个可以控制的东西的话。

就说它是一个变量来去传递,来去控制的一个文件的话,我们可以通过呢更改这个变量的值啊,更改这个参数值呢来实现,把这个地方的这个文件名呢,给它进行这个替换掉,然后这里呢就是一个典型的文件包含漏洞。

所以说文件包含漏洞呢。

其实就是在这个程序开发的时候啊,要去包含一些文件,那为什么要包含这个文件,其实就是刚才说的啊,就包含文件,那就意味着把这个文件里面,一些代码来进行共享,那么就不需要再次去写一些代码,是啊。

比如说你要这个函数,那你要在代码中去重新再把函数,代码来扩频一份,那就直接包含这个文件,就可以不用copy,直接用这个函数就可以享用什么一个情况,但是在这个过程中,如果在包含文件那个地方。

能够控制这个包含文件的话,那这就是一个文件包含漏洞,这个好理解吧,然后在这里呢我给大家说一下,在pp这个语言里面呢,有这几个函数是做这个文件包含的,include呀为quest。

然后include onor,Request onset,然后在java中呢有一些这个类是吧,file类和这个file reader类,这都是呢属于那个文件包含了一些函数,在点net里面的也有啊。

那么将这个函数的意思就是告诉大家了啊,你碰上这些函数的时候啊,就知道这里呢可能会涉及到的,就是这个文件包含的这些操作,在这个代码升级里面,白盒里面去分析的时候,也是根据这些关键函数呢。

来去寻找对应的漏洞是吧,就说我们后期去讲这个代码审计,不管是pp里面还是java里面,你要分析这个文件包含漏洞的话,也是根据这个使用的内核函数论来去确定,这个地方呢有没有这个漏洞,就根据这个地方。

好像在这个CTF的一些考题里面呢,也是通过CDF里面的这个函数来去寻找,它考的是哪一个知识点,对吧,那么如果在黑盒中,黑盒中呢就是说没有代码的情况下面啊,就是说光秃秃一个网站代码也没有。

那么一般是怎么关注到,有没有这个文件包含漏洞呢,一般呢就是根据这个网站的这个地址,参数值和参数类参数名呢来决定,就是说在他的UL地址上面呢,有这种类似的这种东西,比如说喷起啊,DR啊,fire啊。

这喷几啊,这个P啊,烟机啊这种,那这种呢英文单词的一个翻译的,大部分都是指向的什么路径目录文件是吧,然后页面这种单词的一个解释,后面再加上一个等号,前面的是参数名。

后面加上个等号等号后面跟上的是一个文件名,或者说一个文件的一个名称,那么极有可能就是给他去传递一个文件名称呢,来run这个代码,那来结束文件名称,那来对这个文件的引包含,所以在黑盒中的话。

就是关注到这个育L星系里面,他这个观点名称和关键词,来确定这个是不是一个文件包含的一个操作,来确定有没有漏洞,好我们在这讲了这么多,我们先给大家呢看一下这个大概的一个情况。

让我们大家呢再去思考这两个问题啊。

这个简单的一个情况呢就给大家介绍一下啊,比如说我们在这里。

那就随便创建一个这个文件啊。

好这里呢我们写上这个include啊,他这里呢是pp的啊,Include,然后你看啊这个地方呢,他可以这样写,当然呢他也可以这样写都可以啊,这个也无所谓的,你写个这个,写个括号也行啊。

然后这里呢我们看一下啊,我们,啊这里呢给一个叫参数值,叫bell好,好大家看到啊,这个是那个一个那个,一个代码啊,来这里呢是用这个encoder去包含这个get。

传过来的file的一个东西,我们现在呢去访问一下啊。

访问下这个地址啊,哦然后呢我们给他传参根号file是吧。

这个大家看一下啊,比如说我们这里呢有个这个找一个啊,找个疑点,随便创建个文件啊,名字就叫一点TT好吧,ETT里面的写上个这个tb代码好吧,这是一批做了一个代码就写这个东西,然后呢我们在这里给它一点TT。

大家看到啊,那访问这个文件地址的时候呢,这边呢他去接收到访问这个地址是吧,他解释了就是这里,那就相当于执行的就是什么呢,不是encoder,那结束这个E点TT嘛,就是接受一点TT嘛。

包含这个疑点TITE点,TST呢就代表的就是什么里面呢写个PV音符,那么就把这一点TT呢给它指引出来了,那么其实这里呢就是相当于就是说啊,这个文件包含了这个包含的这个文件呢,就被这个当做,当前脚本年呢。

去执行的话是什么一个概念啊对吧,然后呢,就把里面的代码呢当做这个脚本原来去执行啊,不管说你是个TIT也好,还是任何格式,它都可以啊,只要里面是这个正确的这个脚本语言代码即,可是吧,这个呢就能进行包含了。

那包含了就是把它执行了,那么还有没有其他方式呢,就是这个文件包含这里是可控的变量对吧,可控的变量,那么漏洞乘一呢也是非常简单的,通过这个例子也来看呢,它的一个漏洞乘一呢也非常明白了哈。

啊第一个呢就是说使用能力叫什么文件,包含多种函数函数,第二个呢就是使用这个,对不对,使用了这个文件包含函数,然后呢再就是这个文件哈,对我们可以控制它啊,然后通过参数的权利去控制它,那么如果说写死了。

那就没有文件包含漏洞了啊,这个好理解哈,好既然这个漏洞文件包含漏洞呢,讲讲清楚之后呢,我们接下来要思考一个问题,就是这个文件包含好,它有区分两种,它的一个分类呀,等等一下啊。

分类它的分类呢一般是区分第一类呢,就是我们说的粉底包含,还有那是远程包含,但事实上啊远程包含的话,在当前的网络环境下面已经极少见了,很少见了啊,大部分都是本地包含,那么这个远程包含本地包含呢。

顾名思义就是一个呢是只能包含本地的,还有一个呢就是包含远程,那这个东西是由什么决定呢,它原因决定因素啊,就说为什么会造成这个差异,差异原因呢是一个是代码的这个过滤,还有一个呢就是我们说的这个配置文件的。

一个开关啊,里面开关这两个东西呢来造成的,什么是过滤啊,很简单的道理,就说你能远程包含,但是呢由于这里过滤了一些这个关键字,导致你不能远程包含,所以呢你就只能本地包含,这是第一种方式。

还有一种呢就是说直接从这个开关上面,那不允许呢加载远程的文件而导致的,那么具体呢给大家演示一下,那这里呢是包含本地的一点TIT对不对。

如果说我要包含一个远程文件的话,那我这里呢可以加上一个app的一个协议,也称之为在利用中的一个伪协议方式,加载一个远程地址,那比如说我这里,那就我加载一个这个,嗯怎么老是这个符号啊。

你妹的冒号打不出来了,哎啥情况,键盘有问题啊,好出来了,你这里呢我们就写上这个远程地址,比如说我们呢就随便写个地址哈,好我直接回车呢,他这里呢如果说能够远程包含的话啊,不管说这里是个什么文件。

它都会有个远程包含。

它不能远程包含的原因呢,就是这里呢有个胚子啊,这个胚子呢是在pp里面的一个配置,这就是讲PPP啊,如果是其他脚本里面的话,其他的这个语言里面呢啊,有些是有原则包含概念,有些是没有啊。

比如说现在呢我们使用这个pp的那个,那个版本呢是这个哪个版本,看一下啊,他这个起点4。4的一个版本,然后呢呃他这里呢是有一些这个配置的,我们可以看一下啊,在这个pp里面,一般在后面那个配置呢。

高版本的它默认的是把那个东西已经,来一个了啊,就把那个开关呢自动就跳了的,这里可以叫软件包含开关,其实就是一个那个呃along you are include,那个开关。

就你勾选这个呢就在图形化上面操作啊,如果是在这个AI里面啊,就是他一个配置文件pp那个安装目录ii里面啊,是叫一个along,然后下划线UL在下划线的encoder,一个那个名字的一个开关,我给他找到。

给他看一下啊,这个呢不是很重要啊,前面在以前早些年呢这个安全课程里面呢,这个东西还比较重要,但随着现在这个安全需求的话啊,随着pp的落幕,再加上现在一些这种pp的版本升级呢,这个东西默认都是关闭的。

在高版本里面啊,但是呢也有可能是开启的,但要知道,我们找一下他这个PPPI的II的文件啊,这里好,我们找一下啊,打开看一下啊,这里有个叫搜一下啊,Along,下划线u u all NO。

呦呵这个怎么老是这样子啊,include啦,你看啊他这个地方呢是一个off状态,看到没是off状态的,对不对,就是如果说你把这个开了之后呢,就on状态,那就开了,对就这个意思啊啊你在这个地方呢。

你给它点开。

然后点确定,点确定之后呢,我们再关注,重新打开它,再搜到个关键词,你看现在自动是不是变on了呀。

我刚没改它吧,就是点了一下这个按钮,它就把它改了,所以说你在哪里啊。

在这里改也行,在这个图标上面按也可以,那改了之后呢,你现在呢你再去让他去访问。

你看它就不会有提示,这个页面就一直在加载,为什么一直加载呢,因为他尝试去访问这个下八点com了,但这个下八点com它啥都没有,所以包含就没有啥,如果说你要包含的话,我给个撕一下啊,让大家看一下效果。

啊我们在这里搞个远程服务器啊,晓得帮你看我的,现在我打不开啊,我就直接用我这个远程的服务器,上面那个文件呢去做一下对应吧,嗯这里呢有个什么文件看一下啊。

嗯我找一下我那个目录啊,那个web目录好像是在这个下面吧,下面有个这个,这搞个file点TT吧,这个file tt是什么鬼东西啊,哦是这个东西,我就写个GB代码,好这里呢有个file点TT。

我们现在呢先去访问一下这个fire tt啊,来个路径,好大家看到了啊,好现在让我开啊,对啊,等下这个地址你看不也打印出来了,我只需要控制个file,点TXT呢就能实现这个代码的一个执行,对不对。

那就是说你改这个文件,改这个远程这个文件呢,它就远程代码执行嘛,然然然然成这个东西,你就可以在在这里啊啊去这个写是吧。

echo yecho是吧,输出一下三哎,保存一下,你看这里刷新。

那就变了是吧,变成这个是吧,好理解吧,这个是远程包含啊,那么这是第一种啊,反正包含的原因呢大家也看到了啊。

就是那个开关要开起来,但是呢由于这个高版本的默认是关闭的。

所以说很少见啊,也很长时间,这个呢大家知道就可以啊,一般实战中呢很难碰到,但大家知道这个情况啊,嘶好这个是它的一个基本概念和分类,然后我们再来说一下它这个危害啊,危害危害大家刚才看到了。

额可以进行那个代码的一个执行,但是呢它是包含那个文件呢,把那个代码执行,那我们这里呢就要思考第一个问题,就是说危害啊,大家看到了啊,它包含是那个文件,那么大家试想一下啊,如果说从本地包含来去讲的话啊。

从本地包含去讲的话,你先思考一个原因啊,思考什么原因啊,那如果说他从本地报上去讲的话啊,本地包含本地包含,就是包含本地的文件,那么大家试想一下这个本地文件,没有商传的话,那么文件是就是固定的。

那么你要包含一些这种带有攻击的代码,因为我刚看到啊,包含了第一个啊,看到这个效果就是它进行了一个什么,进行一个代码执行,对不对,就是把那个代码进行执行了,那么试想一下哈,那么如果说本地包含的话。

你没有上传这个文件的话,那么那文件它就是固定的,那么包含你要攻击这个包含带攻击性代码,这个可能吗,不可能,啥意思啊,就是说你只能包含本地文件,那么这个本地文件它是什么样的,你就只能包含什么样的。

它能干嘛就是干嘛,你不能说向外面指定,对不对,比如说这文件呢就这么多,那么你就只能包含这些文件,那就做不了其他的事情,这个好理解吧是吧,就这个意思啊,所以呢他就分两种情况,他在利用方面的话。

威海讲的就是利用嘛,利用方面的话,它有分两种情况,第一个呢就是我们说的是无文件的,这个什么利用,还有呢就是有文件利用,什么叫有文件和无文件呢,就是这个本地包含的啊,有文件利用的话就说啥意思啊。

上传一个文件,不管说你这文件是不是图片好,那么这个文件里面呢写有什么,我们的这个恶意的这个什么代码,那么再去包含这个文件不就行了吗,是不是就是配合上传啊,这个意思就是说是配合上传这个概念啊。

还有一种呢就是我们说的无文件,那么一般的无文件就利用三种方式,第一种和第二种,第三种,第一种呢就是我们说的啊包含日志文件应用,还有个呢就是包含C型文件应用,还有就是我们说的伪协议玩法,利用三种方式。

那为什么在无文件里面呢,有这种啊,然后这是等级包含,我们再把ram写进去啊,这个远程包含呢那就很好解释了啊,这个远程包就很好解释了,远程包含的那没什么说的,直接包含个文件就完了,这完成文件嘛。

你自定义自定义的远程文件,你说咋玩呢是吧,自定义想怎么玩就怎么玩,只不说了啊。

这个好理解吧,比如说这个你理解不了啊,这个理解吧,这个远程包含玩法就不说了吧。

因为你就直接让它包含一个远程的地址文件,就行了啊,因为这个远程地址由你制定,你说让它伴随就伴随,那这个文件呢你把内容一改,需要让他执行什么东西在里面改就完了好了,本地包含就只能包含本地文件。

这个本地文件就相对于那个网站自己的服务器,那个文件啊,就是打点在哪里,那就是在服务器自身的文件就不可能说啊,超越它服务器之外的,那么现在呢我们说核心点呢,这个有文件上传,那就不说了,对不对。

相当于就是说这个疑点,TT就是我们上传上去的,哎这里呢写了个代码,然后然后包含了这个疑点TT哎,这就是我们说的,那假如说这里呢你要包含这个疑点TT是吧,这一点向T该怎么办呢,它不能上传又怎么办呢。

那就说无文件应用问题呢,就是用三种方式,文件日志和这个C型日志再次伪协议玩法,好我们先把这个点呢给大家搞清楚,问一下大家能不能理解这个思路啊,把这个思路能理清楚之后呢。

我们就来讲下面的这个利用的详细过程啊,能不能理解这个啊点啊,就是说这个包含里面的有两个,一个是泥包含的,一个是远程包含是吧,远程包含就不说了,这个太简单了,那本地包含呢有区分两种,一种呢是无文件。

还有一种有文件,有文件,那就是配合这个文件上传的上传一个文件,然后呢让它包含,因为这个文件是你上传的,所以里面的代码呢由你指定,所以我们就可以实现这个代码的任意执行。

但是在这个无文件里面就说没有上传的话,或者说无法上传的话,就是借助它自身的服务器的日文件,或者C型文件,或者呢暂定伪协议呢,把这个点呢先给大家说清楚啊,能不能理解这个,把这个理解之后呢。

我们才能进行下去啊,不然的话比伤了是跟没伤一样的啊,这个有文件利用,好理解吧,我刚才说了嘛,假设这里有文件包漏洞,没,这个依然天气,就是像是我们通过文件上传上上去的是吧,然后再去报这个一点TT。

那么在上传的时候,那你就更改这个代码,让他执行什么就执行什么,好理解啊,同样的案例,那这里也是个home文件,那么那个文件地址那就是个home代码,后面啊,后面第一次啊。

嗯刚才那个第一子跑哪去了,192。

那给他孩子演示一下啊,不要再说以后搞不懂了,这个商船呢我就不演示了哈。

这个上传操作就不演示了,这一点天机就默认是我上传的,你不要说哎呀上传是图片啊,图片也好,什么也好,这不重要了啊,我怕有些人喜欢喜欢老问这种问题啊。

你比如说像现在啊。

我记上传个图片,图片呢一点JPG对吧,你肯定又说哎呀上传图片我不知道地址,那你地址都不知道,那等于没上传啊,写个疑点JPG或怎么样。

对不对,然后把这里改改成个这个,改成一个这个什么后门代码,对不对,加上后面代码再访问这个文件,来执行后门的意思嗯,这不是能连接上了吗,这是后门的,用这个文件包含漏洞,包含这个一点TT。

那么ET里面后面单位被执行,这就是后门的就连接上去了呀,对不对,这本地包含了这一点T就像是我文件上传的啊,对不对,然后再就是我们说的这个远程包含啊,利用啊,不想讲太基础了啊,哎我怕有些人实在是不懂。

没办法再给你演示一下啊,如果说你还不懂,那是真没办法。

那这个file tt就是我们远程的是吧,你通过你的远程的搭建一个网站,然后呢再到上面呢去切个后门,对不对,这是后面嘛减去。

那么再把后面地址一改,它是远程包含它,如果能远程包含,那要怎么办,把那个一改,把它改成包含这个地址,那么后面地址就是这个,我们再把这个地址一更改,点击测试,OK确定修改开下地址是吧,能连上,那没问题。

都正常好,这就是我们刚才说的那个两个概念啊。

就是本地包含一个配合文件上传,还有个呢那个TXT。

那就是默认是我们那个文件上传的文件啊,你知道路径就可以了,不造路径,那就那就相当于那个东西还是无文件哈,好了。

现在就说这三方面,下面是三方面,因为我们的终点呢主要是这三方面的啊,这上面这这个东西呢比较简单好理解,那么呢这里呢我们看一下这个无文件利用啊,一个是包含日志文件,这个还有一个是包含C型文件。

还有一个呢是伪协议啊,好在讲这个之前呢,我们现在先来了解一下伪协议,因为这两个呢等下会说先来看伪协议啊,这伪协议里面呢有几个东西要给大家介绍一下,首先呢第一个啊它能实现哪些东西。

第一个呢用伪谐音来实现文件读取,用伪谐音呢来实现代码执行,用伪协呢来实现文件写入都可以,那么这是在pp里面,那如果说在其他语言里面,在java里面,那或在其他语言里面呢。

大家可以根据这张表格呢来看一下呃,他这里呢有这个各种语言的啊,这个java p p还有个PO,还有点net,然后暂停在前面是协议的名字,app和DPS,还有这个类似的这种格式协议DICT啊,什么东西。

那对应的方法和这个协议对应的玩法呢,上面都有解释啊,这个对勾的就表示支持叉叉呢,就是不支持的意思,你比如说像pp里面,他就支持这个前面的SMAHP和DPS,那么前面我们的原子包含。

不就是用到的是HP协议嘛对吧,V协议就是协议啊,然后呢还有像呢下面还有这个什么pp的,它也是支持的,那pp呢在其他里面就不支持了,那今年呢这个pp的文件包含里面呢啊,里面就有这个东西。

你看啊有file协议,还有这个什么pp input,Pp fighter,那这几个呢在使用的时候要看一下它的版本,支不支持,大于等于502就支持,那这个基本上都能满足,因为这个五粮版本已经好多年了啊。

现在的版本基本都大于它,所以这个呢是忽略不计的,还有这个呢开关啊,你看啊除了这个data协议呢,它需要这个for open呢打开,其他的呢都是关和打开都不影响,那其实这个呢也是基本没什么影响。

因为这个for open呐在高版本默认也是打开的,就说即使是关闭这其他几个倒也不受影响,主要就是这个alone,You are include,这个呢高版本默认是关闭的,所以一般高版本呢。

如果说没有恶意的去修改这个啊,没有这没有这个自己去设置这个开关的话,那默认是off,那么可能的话在data这个伪协议和这个input,这个使用方式上面呢可能就不行。

那么就只能使用file和这个fighter啊,这两个居多,还有这个zip还是什么b i zip呢,这个呢是需要一个插件开关的,这个呢也很少见,主流的还是fail啊。

fighter和批评input和data居多,那么这几个东西究竟是干嘛用的啊,他这个就是使用的条件呢上面写上去了啊,我们呢给大家简单的演示一下,可以利用这个伪协议呢来实现文件读取,文件写入和代码执行。

我们来先看第一个实现文件读取,我们呢可以试一下,第一个用到file协议,那刚才那是直接给他加个地址是吧,我们现在用file呢让他去读取,比如说D盘就是盘符下面的啊,一点TD1读啊,他就显示了R1点TT。

对不对啊,大家看到啊,一点TT,然后呢我们找到这个了,当前我啊我八点上本地的嘛啊一点TT啊,就这个嘛写进去了啊啊能够尝试读取好,这是一种复取方式,这读取方式呢需要绝对路径啊,显然呢这个不是我们想要的。

就可以用这个pp input read方式,后面呢加上这个东西啊,你可能说这个东西为什么要这样写啊,在网上规定的,你可以再参考一下文章啊,就这里有个参考文章好给大家先演示一下啊。

后面呢再给大家具体讲这个为什么这样写啊,啊想这个地方,那这个意思是什么意思呢,这个意思是什么意思呢,就是利用这个pp input协议呢,来去读取一个pp infor点pp。

然后呢用base60呢把它进行编码,那么我们打开一下好,这里呢显示空白空白的,就说这里没有p p for点TT,我们再来读取个一一点TT,哎读到了读到它返回个这个值。

这个值呢就是利用base news的A编码的值,然后这个时候啊,我们再利用前期介绍过的那个转码工具啊,把它进行一个转码。

这个并丢失的啊进行一个decode,那他读到的就是这个内容,那这个一点TT就是这个内容吗,这对那这是文件读取啊,文件读取,那么这个呢就比刚才这个呢要好一些。

就是没有绝对路径,就只写个相对路径,就是那当前目录的一点TT,如果说你要读到那个D盘的,那就是一级调机再调机再调机是吧,一点接一,你看他就读到这个了,这个呢再去解嘛,不就是123吗。

这个呢就是说只需要控制相对路径来去读取啊,刚才那个呢要绝对路径啊,再说文件写入啊。

文件写入呢可以试一下p p input来实现,p b input的呢其实是代码执行的,但是呢我们可以通过代码执行呢,来实现文件写入。

给大家讲解一下啊,用这个啊,因为它用了PTER的一个post方法,把这个简单使用的给他介绍完了之后呢,我们再用这个题目啊去给他做,这样子呢就会好理解一些啊,嗯你比如说用pp put啊。

然后呢加上这个号面啊,后面呢再写上啊,然后在这里呢port方法里面呢去写这个代码,然后写个这个PB代码,那个PB代码,那你想干嘛就干嘛啊,比如说我们可以让它执行个PP引波,就在这里写pp代码。

这是直接执行代码执行的啊,它也可以进行代码执行,然后呢也可以这个写文件,因为你可以用代码呢去写文件,所以呢啊他执行讲完,如果说你要写文件的话,那就利用个PP代码去写一个文件是吧。

那PB代码呢打开一个shell里PV,然后呢写入这个代码,然后呢他就会创建一个shell里pp,对不对,这个就好理解啊,不好理解,那比如说像现在呢他下面下面呢没有这个线,点BB是吧,好示例四。

但你在执行之后呢,刷新一下这里啊啊就有了是吧,访问空白了,那这个文件呢就写进去了啊,所以这是文件写入,还有一种方式呢,就是利用这种协议呢来进行文件写入,但这种方式去文件写入的话,需要有个条件。

这个条件是什么条件呢,就是说还要有一个变量,还要有一个变量,这个呢有点小复杂啊,一般用的比较少,我们在那个CCTF题型里面会考这个呢,我们就先不介绍了啊,等下CCTF体型呢可以看到这个他这个利用面。

如果你这样去利用,那它不行,这样去文件写入法啊,给大家看一下啊,那你直接用这个呢写上去写一个文件,名字叫pp引for,然后怎么去写呢,它是用base64decoder,如果这里要写文件的话啊。

你给他传一个这个base64值,然后去写,那么写了pp for点pp吗,执行之后呢访问空白,然后你再去访问一下pd或者tb啊,还是没有是吧,为什么呢,因为他这里面要需要给一个参数。

而且他在代码中呢可能要加上这个,嗯我PUTER,哎哎我有这个啊,然后呢去写上这个,重新找到第一个参数,啊第二个参数就是五个人用这OST接收的,你可要这样去写呢,他才能满足content啊,这样去写。

他才能满足这个写入的一个操作,哎这个代码是哪里写的文件文件名,这里全参的文件名,好我试一下啊,这么写。

哎2S写错了啊啊写错了。

可以了啊,哦是的,二要把引号去掉,因为那个是一个函数。

不是函面,你看他这就写进去了啊,他这就写进去了,那他写进去了啊,那他就写进去了,所以说啊嗯,你这里那就他就那个显进去了啊,这个就显进去了,这个就能写,但是他就说还需要一个变量。

所以这个呢有点和刚才不一样啊,所以这个呢在CTF里面才会有啊。

还有个代码执行,代码执行呢刚才用批评put应该演示了。

还有一种呢就是用data协议,还有1SN协议啊,file协议和pp协议,然后呢还有一个是data协议,还data协议啊,啊data的协议里面一种呢,就是直接后面他写的代码执行,写必要执行的代码。

执行批评for执行了,还有呢就是把这个代码呢用base64编码,把六四的编码啊加个base64,加这个参数值执行啊,他也能这个哎啥鬼啊,好你看它也能自信是吧,然后这个后面这一串值呢。

其实就是那个批评for那个加密字符串,我来解密给大家看一下啊,那就是个批评图,看到没嗯,好这个就是我们说的那个伪协议呢,一般常做的三种事情,就是进行文件的读取和写入和代码执行,这是他能够做的事情啊。

所以大家能够理解了,在这个做的事情上面的话,我们来思考一下他是不是无文件来实现的,这个功能,是的吧,我没有说让他去包含一个从文件的来执行,全部都是用这个伪谐音呢来实现的,文件读取,文件写入和代码执行。

所以这和我们刚才说的那个思路,是不是就吻合上了呀,什么思路啊。

大家刚才看到那个思路,那呃无文件利用的时候,因为我们要包含一个文件嘛,包含一个文件,那来执行这个文件里面代码,但这个文件呢我们不能通过上传,不能固定这个文件,就说我不能自定义这个文件。

只能用这个本地文件,本地文件那里面代码你也不知道,或者说里面写死了,你怎么不去包含一些恶意的呢,那实现不了自定义,我们就利用这个伪协议呢来实现自定义的,去读取目标文件。

然后呢去写入文件去进行代码执行来再次利用,这个好理解了吧,好不好理解,然后在进行这个文件伪协议的利用的时候呢。

啊他是有基于这个协议利用上面的一些差异的,那哪些是差异呢,就是说有些呢是基于这个版本呐,和这个开关的问题,这里呢就我再不给大家啰嗦了啊,比如说我把这个开关一关,对不对,那么有些那就不能用了。

来我们演示一下R还是把那个开关一关啊,啊这个表情包含把你关啊,软帽一关,那就等同于这两个开关关了,那include这关了,那就是说pp input和这个data那就无法使用了,大家看一下是不是啊。

但是data协议再次运行没了,对不对,没了啊,那p b put呢,执行是不是也没了,好理解吧,后面的操作我就不演示了啊,好这个基本概念的文件包含呢已经讲完了,接下来呢我们就用这个CCTF的题型。

和这个真实的网站应用呢去给他分析,那么先来看一下真实网站的一个例子啊,去给大家看一下这个情况是一个什么情况啊,那么呢找了一个这个WPS的演示站点啊,去给他演示,那这也是打印在网上的,呃。

这里呢前期的这个漏洞的发现呢我就不说了啊,因为这是我们担心的问题,他这里呢有个地址啊,这个地址呢就是一个文件包含,我用那个WPSS扫的啊,给他演示一下,这个无所谓啊,这个这个漏洞啊。

工具什么这个东西不是我们现在烧烤人一样,先把漏洞搞清楚啊,这个漏洞发现这个东西呢后面学一下就可以了,不是很大的问题,那他在扫描漏洞的时候呢,发现有个地址呢,大家看一下啊。

这个地址呢是一个get show imagine pp,然后fail show imagine pp,加上个例子啊,通过这个地址上面呢可以看到啊,有个这个关键东西什么FA,那么怀疑这里。

那可能就后面全称就是文件,那么既然是修点image pp文件,后面呢回线之后呢,发现会显了源代码,那就说明这里那就是一个文件包含,那么也就是说通过这里呢给一个修理,emage pp给他。

那么这个我这个待完了,就会怎么样去包含这个秀点一秒记,那么如果尝试性把这个文件都改成一个,其他名字呢,会不会包含其他文件,来实现文件的读取和文件包含呢,那么我们真实来去测试一下啊,这是那个网站啊。

我们打开给他看一下,啊这张网站,然后呢我们去显示这个地址啊,只是没有那个情况啊,这是他访问的时候再来个例子,然后呢我们抓包给大家演示一下。

因为这个直接从上面看都看不到效果啊,抓包在数据包里面去提交。

看那个回信。

好我们现在呢来看一下这个地址啊。

那这三个地址吧。

好再来地址啊,我们要发到这个report模式下面来去看一下啊,勾一下之后呢,就能显示它的源代码,对不对,那么死者呢我去包含这个文件,这个文件呢可以从这里的一些包含里面去选啊,嗯这是源代码。

然后呢我们可以看一下啊,好吧,直接呢让它包含一个什么index,一般默认都是首页index嘛,那就写个index,对不对,来把这个改成index pp,然包含index,试一下勾,哎。

index也出来了,那是index的源码,pp源码,从这里呢又看到了一个database content pp,这应该是数据库配置文件,再把这个一替换,这能包含这个文件,Let go。

哎这不就数据库配置文件吗,本地账号密码是吧,数据库配置信息了就出来了,数据库名是吧,实现那个任意的文件读取,这个就是比较真实的一个网站,那个什么啊,比较真实的一个网站,那个包含漏洞文件利用啊,对不对。

哎然后呢你再根据它上面,比如说上面有哪些文件啊。

有哪些文件有意思呢,去包含它来读取它的整个源码和体系啊,当然了,你也可以测试我们之前讲过的这个什么啊,file协议去读取文件,或者说用到什么pp这个这个什么代码执行。

那这些操作是吧,用这个什么date啊来实行这个代码执行呢。

来直接执行一个home代码呢,来实现这个后面的通知,但是很显然啊,他这个网站呢没有这样搞,就是他把这个点防住了,他就只是做了个演示,就是帮你呢简单学会下这个漏洞眼,应用后面的过程呢全部封死了嘶。

他就不能执行代码执行,为什么不能执行呢,就是它一个它自身网站的过滤,还有个呢就是我们说的啊,这代码执行这两个协议呢都需要这个开关开启。

但是它这个上面呢开关都是关的哈,因为它本身呢它是一个测试漏洞网站。

它指望你这个漏洞能点到为止啊,你后续呢想在上面那去植入个后门的,连上去呢,他是不允许的,因为他怕你连上去之后呢,把它源码一删,那不是GG了吗,能理解吧,所以后续步骤呢就没有了啊。

他就是做了一个对漏洞的限制,只让你读取文件,后续像什么代码执行文件写入呢,他就在上面他做了过滤和修复啊,就是知道你能了解这个漏洞那个大概情况啊,好,这个呢就是我们说的这个黑盒中的一个情况啊。

那通过这个黑盒呢其实比较简单。

黑盒就是说没有代码的情况,下面一般呢就是根据这个网站里面提取出来的,一些URL地址,来关注到这个URL地址上面那些参数和参数名呢,来去确定,因为这个文件包含呢一般传他一个漏洞的原因,就是说有可控变量。

这个控变量呢一般传的就是这种类似文件名,那么很可能他在扫描的时候,爬虫的时候爬到这个文件了对吧,它爬到这个文件了,爬到这个文件,发现后面参数名呢也比较可以叫个file。

然后后面加上的默认路径呢也是这个文件名,那么实际上呢去尝试替换一下这个文件名呢,来实现的包含其他文件,那么其他文件包含之后呢,把源码来进行得到好,然后呢如果正常情况下面的话。

我们肯定就是来尝试命令执行和文件写入,这个操作了,来实现把后门的植入和后门的代码被执行了,来尝试后面的连接操作,这是说我们常规在实战中的一个后续操作,但是由于这网站呢是本身是一个模拟的。

一个搭建的一个漏洞站点,一个真实的漏洞站点啊,所以说他没有这个后续步骤啊,他把修复了不,你也不要为此修复,刚才我也解释了哈,如果说你能用后面连上去的话,那有些人呢就在上面,那就把文件删了。

东西一搞网站呢又得重新答了啊,好这个就是我们说的那个黑盒的一个情况,那么现在呢我们就来白盒上面来去看,白盒呢一般就是两种情况,在我们学这个知识点上面对的,一般百科里面就是两种情况。

一种情况就是我们应对的就是在我们常见,在这个比赛里面经常碰到的CCTF的考题,还有个呢就是真实情况下面,那些CCMS的一些这种漏洞审计,好理解吧,就说我们讲这个课程的,都是围绕现在的一个各种方向来去。

给他讲这个知识点,因为就是大家打这个真实应用网站的,就类似于我们像这种,他就偏真实的这种情况是吧。

这种形式的,还有一种就是大家在打这种CCTF题型考题。

那么一般考题里面大部分都是百合,就是给你代码,让你自己去分,还有一种就是我们在这个真实性方面,还有一种就是说有代码,就是从代码当中去挖漏洞,万灵的这种技巧,就属于代码审计方面的知识点。

那么代码神经支点呢,就是我们后期单独那个课程去讲,所以现在呢还接触不到,那么现在呢就是主要围绕这个知识点呢,针对CCTF的题型和这种黑很重的一些测试,在白盒中的代码审计呢是在哪个章节呢,再给他讲啊。

大家呢就说到这里啊,大家明白这个点啊,不要说我没有讲啊,因为这个点呢要到一定程度之后能讲,才那个你不可能说一讲到这个漏洞啊,你就搬一个这个CMS啊,这个是单独讲啊,单独去学好,那现在让我们看一下啊。

这个CDF里面的一些题型啊,我们讲课的平台用CDF修啊啊,光三代还有其他平台,这两个修为什么用它呢,第一个呢是它的题型呢整理的比较好一些,比较循序渐进,很多CCF的一些平台呢它都是一些大赛题目。

对于我们这个初学者呢,他不太友好好,那我们登录一下啊,然后让我找到这个web入门这一块哈,这个关于这个文件包含的题型呢,他有这么多点这几个题啊,我们就给大家简单解释一下啦。

比如说78题,那我们就开始做打开呀,大题目连接啊。

稍事等待十秒钟之后呢,等题型呢启动成功,我们来看一下他现在还在启动中,好启动成功啊,这个呢很好理解,那就是一个给你代码的,让你去呢,是不是涉及到encoder呀,那刚好今天学过了encoder来包含。

还有这几个函数,那就不说了啊,这是pp的题型案例,哎这个啦,这个本地包含的角low file exclude,专业名词啊,原词more加reboot,File include,就是RFI和LFY啊。

以后说到这个名字呢,你不要不知道啊,那pp里面encoder啊,如果你在CPU体系里面,或者说代码中看到这几个东西啊,你应该意识到这个呢,就是涉及到文件包含漏洞的一些东西啊,这很显然啊就挺抠的。

那这个file呢就是get参数全集的file,那这个很简单啊,那直接找它包含不就行了吗,这还有什么说的,直接后面加上参数,要把包含,那么你看一下啊,你来思考一下这个题型有没有上传点呢。

问下大家有没有上传连呢,他有没有上传连呐,是不是没有上传点啦,没有上传点,那就是说无文件包含,那无文件包含,刚才不是讲了吗,这个伪协议啊是吧,那进行文他要得到flag flag。

你可以通过控制网站呢去读你们的flag,也可以直接在线读,是不是都可以呀,那我尝试下,我尝试一下这个在线读是吧,我常用在线读,那在线读呢就是这个刚才讲了几种方式嘛,这个来这读取的方式,那不是写了吗。

来用用这种方式,还是用这种方式,而这种方式呢需要绝对路径,那肯定选用下面这种相对路径的是吧,读一下,那我尝试读嘛,读一下,看下面是不是有个叫flag的PB,撕一下嘛是吧,勾读诶,刚好有把1-1看下。

是什么鬼,哎flag出来了,就这么简单是吧,那你肯定说哎呀这里面的你的flag pp,你自己写上去的,那我不知道有flag pp咋办呢,啊不知道你就进行这个代码执行呗,那进行代码执行呗,你看一下嘛。

那用代码执行是吧,ppp input来这讲过了吗,代码执行呢几方式,P p input,对不对,你就用这个呃PBBOODER呢来去写,然后呢说明再写上你要读的代码是吧。

比如说我就用个什么呃代码执行嘛是吧,他代码执行嘛,我就用个这个pp的代码执行,就用system来执行一个命令,执行命令来执行什么呢,进行一个LS来看一下当前的这个目录结构,执行然有flag。

那不就有了吗,有了之后呢,咱有命令执行TAAC或者cut这两个命令都行啊,都是读取命令,读取blag的app或TAAC啊,读取哎空白空白的,打开源代码,看一下来是不是也出来了呀。

或者什么这个TAAC也行啊,好这题呢就解决了,那其实这题呢还有一种解决方式,就是利用这个什么远程包含远程包含,因为这里呢它既然能够支持这个批评put,那就说明他开了那个远程包含。

所以我可以尝试性的让他去远程包含一个文件,包含我一个home代码,这home代码呢我刚写上去了,就是我这个地址是吧,这后面代码嘛,然后包含它,那么呢哎这个地址是不是地址。

是不是乱奥斯的啊。

那这放到这个地方来。

是在八成啊,来拿这个地址是吧,把哥斯拉去连接,妈的不要花瓶打开哎,好是吧,都行了,几种解题方式,因为这第一关太简单了,这里面的是吧,啥过滤都没有,那,是不是没什么问题啊,好那接下来呢我们再看第二关啊。

你把这几个题答完之后,那几个文件包含了一些利用啊,包括C点F的题型啊,以后挖漏洞的一些这种常识呢基本就会了啊。

好我们来起死九关。

打开79关啊,打一关给一个讲几个无利用的一些解释,基本都没什么太大问题,好这都打开了,你看第一关呢就加了个pp在一个过滤,他就把这个pp呢过滤成这个三个问号啊,有人就说了。

哎呀我知道这个s str reprice呢,哎能够绕过它,它不是个递归过滤,哎前面听我讲过是吧,但是你要明白啊,这里不行,为什么这里不行了,因为他把PPT过滤成三个问号,你这种我之前是过滤把它过滤为空。

那过滤为空呢就像是前面没有了,后面没有了,然后形成一个当然过滤三个问号,你咋办呢,那里面的过滤成三个问号,你中间三个问号,那啥东西那啥都不是了,能理解吧,自己要学会这个那个了啊,啊刚才有人说大小写是吧。

大写不行,为什么说大写不行啊,因为这是个LINUX服务器,LINA服务器呢它是分大小写的啊,一大写它就不支持了,哼很尴尬啊,好那么现在呢我们来看一下啊,他过滤pp,那么说进行文件读写的话。

是不是还fail fail了,要知道完整路径我不知道啊,就是说啊还要进行这个代码执行,那这里呢是还有data协议啊,你用data协议不就行了吗,这有什么好说的呢,是不是啊。

data协议呢进行data啊啊直接直接data啦,data后面要加上这个代码,一执行执行之后呢,哎发现啥问题啊,因为因为这里面有一个pp啊,pp锅里的咋办呢,我不用pp啊,我这个C他们去执行不就行了吗。

或者说怎么办,搞成base64也行呀,搞成贝斯缪斯的,就把后面这个关键代码,那是不是要执行代码写后面吗,我把它改成贝斯牛斯的,都搞成贝斯缪斯的,写个倍成六四,后面加上倍成六四的一个差值嘛。

那我要写什么东西呢,再编码一下嘛,比如我要执行一个代码,执行一个c time,然后呢去读取一下当前目录,应该IOS命令就系统命令嘛,好把它进行一个解码,写个,那不就读不就这个读取了吗。

啊这个这个是什么情况,呃,我想想啊,应该是这里他这个加号,他要记那个编码,应该是怀疑那个情况再加个吧,唉他要把这个改成白毛2B1,好像是那个鬼两码事情,哪写错了呀,哦前面是个分号是吧。

好你看是不是就读出来了,来LINUX那个命令哎,我这里获取根目录嘛,我就获取当前目录加这个吧,哎这里呢他出了个问题,他说什么鬼,这个问号这个事情,那怀疑就是个加号的问题,唉这妈的加号真是烦得很啊。

唉搞个新打个P的机去吧,他那个要又要编码,你看是在这个目录,那我就读取这个目录下面的东西是吧,这又是个加号,怀疑这里又不行的啊,他加号好像要把编码一下,他老提这个鬼两码事情,我真是。

其实这里呢你可以直接用那种写法,也是完全OK的啊,呃我想想啊,这个,我好像写错了吧,妈的flag出来了,我写错了,多加空格,我还有这个加号那个编码问题,是吧哦这个是那个第第二关。

我们看第三关,所以说他这里的考的就是各种威胁的玩法呀。

再加上一些这种东西,你看他现在有过滤data,哼,它过滤data有过滤pp啊,怎么玩的啊,刚才呢是使用的这个data,现在呢也过滤data了,呃,你看一下嘛,上面还有什么东西啊,啊pp啊,FIL啊是吧。

这个file呢没有用file呢,但是要知道完整路径呀,完整路径你可以自己去尝试嘛,你说我就默认我固定,他刚才拆的那个布鲁斯在哪里啊。

刚才猜到那个flag目录是在哎哎。

指那个下面吧,我们撕一下哈,我们看一下呢,写在这里呢,很明显肯定不行,因为这个pp上被过滤掉了,大家看是吧,国内是空的列子啊,不能写pp了,那里面还是尴尬,那这个file呢也不行啊,那过滤了啊。

应该后面要写PPP才能读啊,他说换一种方式啊,这个这个pp被限制了,这个data呢也被限制了,最好呢要加完整路径,完整路径呢后面又会触发这个pp啊,这里呢就出了一个新的方法,就用到什么呢。

日志包含日志包含什么叫日志保养呢,大家先来思考一下啊,你也可以用到其他协议,其他协议呢,但是呢也要绕过那个pp和那个限制日志包含,是啥意思啊,日支呢是我们常见,在应急响应蓝队里面经常关心的一件事情。

就是分析网站的,反,而日志这个日志呢一般默认保存的,就是在一些默认路径下面,具体默认路径呢大家可以在网上去搜索一下,那么这里呢,我们就尝试性的去让它包含一个默认日志,默认日志呢一般会在这个模下面啊。

这个呢是根据网站的一个中立件配置,和网站上去搜索他的相关默认路径的保存路径,来去得到的,如果他更改了,那还有点麻烦,那包含这个默认路径,让它去呢file去访问,他看能不能得到这个日志,你看可以访问到。

那么这里有这个有这个日志了,那接下来我们该怎么办呢,他这里呢能够读取这个日志路径码日志呢,它会记录哪些信息呢,大家都知道呢,我们可以软件的呃源代码一看他要访问时间。

访问的地址和这个什么访问的这个约维信息,我们就可以尝试性的怎么样呢,把我们的代码后面代码写到UA里面去,因为他会保存你访问的UI,所以我就可以把代码那后面代码写到UA里面去,然后呢去包含它。

不就把这个代码执行了吗,就等同于把后面代码执行了,好理解吧,那么接下来呢我们就试一下,去先去尝试性访问网站,访问网站呢把U维信息给他改掉,那么这里呢最好使用这个抓捕工具,这样分析起来呢会方便一些。

我们来实验一下啊,比如说现在呢我们去访问这个网站好,同时要抓个包,随便拿个包都行啊,只要往网络随包来看一下啊,就拿这个包来试一下,这呢这是他的记录,这个信息我们尝试一下啊,比如说我这里改成呢这么多移。

我们来勾一下访问一下啊,上面的写不写都无所谓,我们呢就返回到根路径,这样测试一起来看一下啊,访问之后呢,我们再来刷新一下,这里来看到啊,UV信息变成了刚才访问的信息,那说明有记录,有记录呢。

我们再把这个地方呢改成一个home代码来尝试,你说写个什么,写个后面代码吧哈。

嗯这个system m啊,就是执行一个这个ls s,对不对,我要执行一个显示当前目录文件那个命令,写到这个UA这里,那么为了这个下午期间。

我前面加上2号,再写这个代码,让它访问一下,那我加载到这个这个什么日志里面去,之后我们再去访问包含这个日志,诶,发现执行了,然后大家看一下,在这里面是不是执行这个代码呀,一个呢是叫flag点app。

一个是index pp,那么呢再去读取这个flag点app,再去写成这个代码,怎么写。

这不就是根号pd,加上这个system继续执行这个程序,Cut,然后呢加上这个文件名,对不对,写了个红区。

然后呢再去尝试性,然后去返回一次是吧,写到这里面来好,再写3×33啊,为了区别啊,勾那我发完之后呢,他就会记录这个信息到日志里面,再去包含这个日志来去执行它,哎大某再来右键让他们看一下,不好意思啊。

Flag,读到了,是不是利用日子呢来实现这个操作呀,这个好不好理解,这是他的这个这个日志包含啊,是不是无文件的,就是利用日志的一个记录功能,记录我们访问浏览器的一些这种访问路径和啊,UA信息,然后呢。

尝试性呢把我们的后门代码呢植入到UA里面,代入到这个日志里面保存,那么一旦包含这个日志呢,就相当于把这个代码呢给他执行了,执行了就取得我们想要的效果,这好理解吧。

所以它也是一种无文件的一个利用啊。

就是我们刚才给他所说的那几点吗,哪几点啊。

还看一下那个笔记啊,来把日子利用,那威胁也刚才也介绍了是吧,还有个这个包含C型的呀,C型呢马上就要来了。

然后这个呢是在81关到81,80关和81贯的讲,是这两个东西的一个利用,所以我们就不再累赘了啊,这两关都是这么一个情况,那么我们就直接来到82关,82关,那到86关呢就是个C型包含,那么这个C型包含呢。

就一些小知识要给大家讲一下,那么现在呢我们就直接开他的82关啊,用81万和80万一样的啊,开到82关,诶什么情况,估计是有人在和我登录啊。

果然哎不是啊,可能刚卡了。

好这是那个82卦啊,82卦呢大家看一下啊,你看他就过滤了冒号和点号了,哎呀这里面的过滤的真是烦得很啊,把冒号也过滤了,把点号也过滤了,我们前面这个file协议呢,date协议呢都要用到这个冒号。

前面那个file去加载那个日志文件的时候呢,大家也知道啊,啊举报这个file的时候呢,他前面写了个冒号的嘛,那个那前面呢,比如说我们这里呢,去按照刚才那个思路去操作的话,来去包含这个日志文件是吧。

很明显啊,他在这里呢也是把这个哎,问号,然后是,是吧,是这样写的哈,这个路径呢啊你用这个file吗,就这样写哈,嗯那之前那个去包含他的情况,那在传导呢他自己呢把这个过滤了,来冒号都过滤了。

所以说伪协议都没用了啊,那他这一关呢我们用的C型C型是啥意思呢,是这样的啊,他这块呢就换了一种思路,那几个协议都过了,他用C型啊,这个C型呢,这里呢有一些知识要给大家讲一下啊,额这个C型是什么东西。

C型呢是我们常见在放网站之后呢,会产生在服务器的一个文件,那么我们可以通过,如果说对方代码里面有接收C型这个操作的话,那么他就会创建这个C型文件,如果说他没有的话,他就不会有。

所以我们就利用pp里面的特性,叫PPPC型APPLA的这个东西来尝试创建C型文件,而且C型文件创建呢如果你不去固定它的话,它会创建一个随机的一个字符串,的一个C型文件,你是不知道那个命名的。

所以呢我们就要固定好那个名字,然后呢去包含那个C型文件,啊去包含那个SEIN文件,好这一关该怎么做啊,我们首先呢要给大家做一个简单的本地。

小演示呢,让大家明白这个C型的操作啊,好我们再来本地搭建这个网站,那么C型文件的一个保存路径会在哪里呢,先给大家演示一下啊,这个保存路径呢是一般是默认的,再就是你在配置文件的自行修改为准,来保存路径。

在这里面呢它保存的是在这个TMP这个目录,这里保存的是C型文件,那么这个呢你可以根据网上这个常规配置呢。

来去决定,比如说这个C型的这个路径啊,给看一下啊,呃一般呢它这个默认保存路径呢,是根据当前中间间的一个Python的来决定的啊,这个呢比如说pp里面就是在这个里面呢,这个参数里面去决定。

那么有一些呢默认存放路径呢,你看这个windows和那个LINUX呢,它都会有一个默认路径啊,那这个是那个随性的一个呢,TMP或者是这个目录,就是你那个当前脚本下面那个物结构啊,如果说你有自行设置的话。

那么就是按照自行设置啊,由于我们这要是在这个TP,我们给大家看一下啊。

首先C型文件呢是如果你有接收C型的话,那么它是可以产生C型的,比如说像我们这个本地网站,我尝试性去访问一个9年,随便访问网站,访问之后呢,可以看一下现在我访问的一个情况呢,看一下啊,这是没有的。

你看它产生的C型文件呢,在这里呢都是以前的,他没有重新产生,但我重新访问这个软件,他没有重新产生,是20:27分的,他没有重新产生。

当时呢我现在呢用到一个pp里面类似的东西,就是这里面写的这个商城按钮,然后这里面有个东西啊。

有个叫pp c型upload,这个呢就是可以模拟让它产生一个C型,我们现在可以尝试一下,看一下,试一下哈,那访问本地的一个192。16,8。1。4。842端口是吧,然后往里高等一批,好让它产生。

然用这种方式呢打开它啊,随便呢尝试一下,看他是不会产生C型啊,就说我先要知道这个C型如何,然后产生它产生的原因,一个是代码的解收C型。

还有个就是我们说利用这种,那个刚才那个操作呢让他产生这些。

我们来先让它产生水平呢,点一下。

哎这里呢还是没有产生,那他还是没有产生,没改,对不对,我再把路径改一下啊,哎这怎么回事。

你妈。

来看一下啊,这里没有产生,没有产生,应该是这里之前就访问过了,他怀疑是要把这个路径把它关一下,发一个浏览器啊,那C型也是麻烦,或者说我重启一下这个地方。

他这个浏览器的开两个,再用这个浏览器打开它,浏览器不关闭那个东西。

不能重新产生。

网线给大家看一下啊,点击上传看一下。

这边,重新启动下,重新启动下,这个地方也要改一下啊,把这个关闭重新打开,一般访问之后呢,把这几个先当中的无所谓啊,重新上传一个随便啊,这个是上传无所谓的好,这里呢还是没产生这他妈的。

我换个网站路径试一下啊,我怀疑是不是个网站路径的问题,这个八一端口的,换个八一端口的啊,他应该是那个配置文件不一样,因为我拔一端口和拔二端口呢,他两个武警呢配置是pp不同版本,他可能这个八二版本上面。

那不支持那些使用方式,看一下阿姨的。

我把代码重新在网上copy一个啊。

啊他利用的就是说说这里呢有这几个东西啊,这个要去把它配置好之后呢,他才能用这个东西呢能创建C型嗯,说实话,但我这里呢我是能理解这个支点的,有些人呢我讲了之后,他也不能理解这个究竟是在干嘛。

学过前面安全开发的应该知道啊,这个C型呢是在那个代码中呢。

有结束这个C型的那个操作的时候呢,它才能产生那个C型号,就说你如果说你没有去设置的话啊,你没有去设置结束那个事情的话,它是产生不了的,它这个那就是利用这个pp一个内置的那个,就这个叫这个名字的。

让它产生C型,就说你没有接收。

我也能让你那个产生C型,就这个意思。

他这不产生前面产生的几个东西都不正常,唉把这个先关闭端口。

重新打开。

好我看一下这里啊,我把浏览器改一下,我看这个C型是不是他妈的固定了,抓个包。

我看我在这强制加上去一个C型哈,看下行不行,插个包,去提交好看一下这里面的一个这个情况,诶毛呢,好大家可以看一下啊,他这个访问上面呢没有这个C型包啊,我强制加一个啊,呃加上去之后呢。

他这地方呢是有个C型的啊,就我强制性的在这个里面加个啊,试一下,我看看有没有产生啊,他这关呢这里上面有写啊,那在这里呢PB的C型id,然后加上个CDF,它会产生一个C型下滑CDF的固定文件。

我们就尝试呢在这里呢去加一个啊,试一下,啊等于这个test好吧,小迪吧,加个这个函数里面在这里加一个,但是前面这些东西呢可以去掉它,要不要无所谓,去让他发送一下,隔一下啊。

好我们来关注一下这边有没有产生,大家看到没产生了,刚才那其实不是没有成功啊,是这个要加来,是可以固定这个C型文件的一个产生的,因为如果说你不不这样去写的话,你就不知道它产生的文件名啊。

然后还有那个看那个三性文件,这个我知道了啊,在这就固定好了,就让它产生这个文件,然后呢在这个情况那个解释这一题呢,这一关是怎么过的呢,就是说啊我先尝试性呢,然后去请发发发文件,发文件,大家可以看到啊。

我即使说产生这个文件,但是你可以看到这个文件呢没有内容,它是空的,它的内容是空的,大家也看到了,它内容是空的,其实呢它正规来讲是有内容的,你看其他文件就有内容,但它没有内容。

因为呢他这个那是会进行清空的,就是说他虽然呢代码中呢没有结束C型,就是不会产生C型文件,但是利用这个方式呢去让它产生C型文件啊,这是那个文章那个介绍,然后呢我们再利用这个条件竞争,去不断去访问这个文件。

让他提交的时候呢,就是这个值呢会写入到那个C型文件中区,这个代码都会写到个C型文件中去,然后在C型文件清空的那一插来,用条件进呢去不断去包含那个C型文件,让他执行这个代码,这个代码呢执行之后呢。

就会创建一个shell里app,写入后面代码,就和我们文件上传那个条件真的是一模一样的,就是因为他要清空这个代码,所以在他清空之前,马上重新再创建一个新的文件,然后这个新的文件呢就生效了。

因为他一旦清空之后,你这问题就没用了呀,里面东西就没了,所以在他这个清空之前,就把这个代码给他执行,我这样讲。

大家能不能理解啊,大家能不能理解啊。

完全不能理解吧是吧,有些人是完全不能理解,实话实说二哦,完全理解不了,我知道嘛,对不对,有些人是故意说完全理解不了,有些人是真傻,不拉几,他就是理解不了,你没办法啊啊理解不了,理解不了,那就那样吧是吧。

不能再讲细了啊,因为这个东西太简单了啊,你再讲细了,就是完全完全就太那个了啊,啊把这个地方关掉,非常好理解啊,其实一点都不懒,不能理解的第一个原因就是前面安全开发课程,他压根就没学,就说学了。

他也没知道讲的啥玩意,这个是个什么概念呢,他这个是利用这个pp的内置的这个东西,来去创建C型,啥意思呢,我刚才给他做了个实验,这个实验是干嘛的呀,我放网站,他不会弹这个C型,但是呢。

我用刚才那个表单去提交一个文件之后呢,它能产生C型,所以说我就让它产生C型文件,这个C型文件呢我固定好这个文件名,然后呢,知道这个默认路径就能包含这个C型是吧,但是呢这个C型呢一旦包含包含的时候呢。

他这个特点那就会把这里面的东西都给清空,所以这里永远是0KB,我要在他清空之前就要把这个代码执行,所以我在提交数据的时候啊,就做了个什么事情呢,就条件竞争,条件竞争干嘛呢,就是让他在访问出发的时候呢。

就创建个新文件,那么就写上这个代码上去,不就可以创建一个新文件,来实现后期那个文件的指路了吗,还能不能理解,这里有几个点啊,第一个点是为什么要用这个表单,为什么要用啊,打不打得出来呀。

这个表单就是模拟这个,这个创建C型的一个操作,创建一个C型文件,固定好C型的文件名,然后用那个默认路径尝试去包含那个C型文件,但是C型文件一旦创建了之后就成空了,因为它的特性就是会把它清空。

这里有篇文章大家可以看到的啊,那他会定时的去清空这个文件,那么也就是说你刚才上传的话,默认会记录这个上传的表单值,就这个值嘛,它一旦清空了咋办呢,所以我就是要用条件验证,在他清空之前。

赶紧去访问包含那个C型文件,让这个代码执行重新生成个小的秘密,为什么会清空啊,你没看这里面写了吗,他这个设置里面会那个啊会清空,你刚才我做实验的,做了啊,乘以0KB,正常来讲的话,他会存储你提交的信息。

会存储这个表单提交的值就这个值,但是他清空了啊。

所以要在他清空之前呢,赶紧成功啊,强行提升好。

那现在呢我们就来调音竞争啊,你看到啊,这个题目呢,呃是我们给大家共享的这个CDF的号,还给大家已打过,答了这么多回呀,这几个题都还没有解出来,嗯这还是有原因的啊,那这个web入门这块呢就是给他打的是吧。

这打的激动,你看唯独这个把手啊,打80就打不出来。

好我们这里呢去给大家演示一下啊。

来,好先先把操作出来啊,这个配置是PP默认配置吗,什么默认配置不默认配置啊,肯定是默认配置啊,我这个啥都没动啊,它就是清空的呀,你没看到效果吗,我给你做那个本地案例,就是让你看那个效果,明白这个原理。

不然的话我直接在上面咔咔乱打,解决就不行了嘛,我给你做本地案例是为了干嘛,让你明白这个过程呀,我本地案例就是默认环境,那你可以看到啊,我现在呢去让它包含这个文件是吧,包含什么文件,大家看着啊。

我包含这个TMP默认目录可能是C型文件吧,C型下划线小D这个文件它有吗,包含包含鬼呀,这压根就没有这个C型小提这个文件,因为他的这个产生文件名呢,大家看到了就是SES下划线小D嘛是吧。

你这个包含怎么包包个鬼啊,肯定包不了啊,是不是他们说没有这个文件吗,提示的啊,一看到这个提示呢,就知道是没有文件,有些人经常在一些安装环境执行环境看到提示,他问我什么情况,简直自己目录搞错了。

文件都不在下面是吧,好保养,这文件你看搞不了啊,怎么办啊,把这个DJ记录利用,刚才那个创建C型那个表单文件,它利用的是那个特性去创建表单的啊。

因为我刚才说了,如果说你的这个代码中没有结束C型的话。

是不会创建C型文件的,但是由于这个代码中,它本身就没有创建C型的文件代码。

所以它不会创建,怎么办呢,就用这个特性的呀,你不用这个表单提交,他不会创建,知不知道啊,我是真没办法啊,讲不知道咋就给讲了啊,前面老有人问我说那个前面安全开发学不懂,可不可以学,下面我能说什么。

你看都看不懂呢,那只能学下面的呀,其实呢前面课程都重要,这都是和后面的有相辅相成的事情,不然的话花那么大气,你给讲干嘛呀,是吧,然后呢大家看着啊,把这个一改地址一改是吧,然后提交到这个地址上面去。

然后呢题放到这来是不是,然后去访问它哎随便他搞个文件啊,这个我无所谓的啊,只要有这个数据包产生就行了,那么呢现在我把它一抓包来点击一下勾,嘿这个抓到了,抓到之后呢,放到这来好,那这里呢把它放出去。

哎好他提交了再来看这里唉,还是没有啥情况啊,是不是要改呀,要在里面写上这个cookie呀,加数据包里面加呀,他没有加上去,是不是啊啊,重新来这里再继续抓,好书包抓到来,把这个改来在coin这里啊。

没有库存,再加一个,唉这里面这个猫好老实,猫好嫌弃啊,来让它产生一个PBC型,等于这个小离的加上去对,把它再再再放,再把它放出去啊,咱们翻出去好,我们再关注一下正面啊,看一下是不是就有这个C型文件了啊。

看一下哎,有了看到没,防空白,有了吧,它不报错了呀,有了没用啊,这里面的啥都没有啊,这空白的呢包含那个空白的,因为包含文件会显示内容嘛,这空白的,因为那个代码呢一插一插,那就就没了,所以怎么办呢。

所以在这里呢就不断发包,不断发这个,让他报把这个事情的重写,不断发包这个文件,同时呢不断去访问什么那个路径,包含路径两个同时进行,一个是不断发包,一个是呢不断去访问那个路径,去触发那个代码。

所以两个同时进行,先把这个数据包发到enclose模下去是吧,不断让它产生这个C型文件,然后产生C型文件,代码里面呢就让他写入C型文件里面,写写入这个代码,然后呢现在呢在不断的去什么呀,去访问这个包含。

它去执行它,因为包含就会执行里面PB代码,那执行的就是这个代码嘛,因为它会定期的删除,所以你要在它删除之前就访问到,所以两个数据包同时进行,一个是不断让它产生不断覆盖,还有一个呢就是不断访问。

直到在覆盖之前访问到它,那么就开始进行,按照前面这个操作一样,NO pados啊,选择无限循环,先让它发起来,然后不断发包,接下来再去访问这个路径,那么访问这个路径的时候呢,也要抓一个这个数据包。

让他去不能访问啊,然后现在我会关注一下,它会产生一个这个笑点pp吧,我们先来看一下笑点pp有没有啊,并且说作假嘛,是不是pp,这是没有的啊,好那么现在呢去尝试性的去装他发包这个问题,先把关闭掉啊。

把那个包先抓到这个访问这个,这个地方的,来访问这个路径的啊,把这个路径的让他不断发包,也发到这个模下面去,这第三个啊,清除这个配置,然后呢选择这个low pados,不要有PADOS无限循环的模式。

好开始这个滑,第二个这地方开始两个勾,同时发发发发好再来发,问小皮皮有没有有没有有没有诶诶诶,嘿嘿嘿嘿嘿嘿,这他妈的啥情况啊,这,笑点屁屁,这没问题啊,你咋没有呢啊,唉真是我搞错了,我等一下啊。

那个先停一下,发错了呀,你妹,唉这也真是尴尬了啊,好那我们先看下面的吧,你们自己下去做啊,这实验操作是哪个情况,我没看的话。

做的时候没看到,82关八奇观都这样做的啊,我把这个后面讲过一个把几万了啊。

这个呢其实就是高级利用,也其实那也不是很重要,但是一般CDF里面想搞这事情,这个呢用那个input来用这个模式,这不和那个写入代码一样的了,结束content用pose接收的,这个呢用get接收。

然后呢后面呢去写入代码,前面加上个什么大佬,别修了,加上这个content,这个有UR扣的第一次解码,这个file file里面呢不能包含这些东西,那他的做题思路那是怎么样的呢,很简单。

他不加这个unity code呢还不好做,加了这个呢好做多了,咋办呢,那我就直接用这个模式来去做,由于他这里头会过滤,所以呢我就搞两次编码就行了,他如果不加这个,那就说我只能一次编码。

如果搞两次编码的话,它减一次,那就变成第二次,它以为它多加一次,所以说我可以用两次,因为浏览器会截S,然后呢这个函数呢再解释,但是呢它这个识别呢,它只识别浏览器解密那一次。

所以这边在判定这个符合这个p p date的时候呢,就刚好把捞过来,所以他这个里面的补写这个UNICODE呢我还不好做。

他写了了啊,他不写,我还不好做啊,歇了那就好做了,他故意的啊,我就怎么样,由于这个地方呢,你看啊我写这个东西是吧,去尝试写入这个代码,我把它进行编码来走。

这个就是我写这个商区,大家可以关注一下啊,我写这个商区,你看一下啊,它会自动的,是自动还是能识别到那个pp啊,你看它把它过滤成这个问号吗,你看是吧,把pp上还识别的问号,你看是不是,但是呢你把它写两个。

把这个呢一复制再重新编一次,写成两次,就两次编码,一写上去它就可以了,为什么可以呢,正常来讲的话,如果说它的本身代码里面啊,本身代码里面他是没有诶,它的本身代码里面没有这个UNICOR的话。

你写两字代码就会有问题,因为浏览器解密一次之后呢,解密成这个了,这个之后他就会认为是真正的数据,但是你在这里呢又写了一次,所以我们就可以用两次,而刚好两次在上面一写的话,就让这个过滤了,就识别不到了。

然后呢我们再写contact meter,前面演示的吧,content好写成这个要写入的内容,这个内容呢就写上base64的值嘛,因为他这里用的是base6decode解密码,我就写上一个值,对不对。

这个值呢就是一个可解密,可以看一下啊,前面的就是个home代码,为什么前面有个AA呢,因为你不写A他会报错,大家看一下,他有个占位,那还有个64之间,他要搞成那个刚好我和那位数相差的那个字。

感情你要写进去诶,他就创建了这个什么,刚才这个编码的那个地方的那个文件,就是创建了一个是吧,1230pp,这刚才在本地做过实验,1230PP呢,就是那个home代码。

然后我就可以尝试着去找这个EXCE点一,好然后呢,刚才密码是V形成一个执行个PP代码,这应该按S啊勾,读取它,是吧,答案就出来了哦,其他这一关呢是自己给自己挖了个陷阱啊。

因为如果说他不用这个ui code的话,那么你刚好呢还补好logo,因为他不用UNICODE的话,你写两个这个编码值就分两次加名,那是不行的,代码会有问题,因为浏览器会自动减于一次,所以他就还原对吧。

就还原你如果写两次的话,解密词就还有次还有次他不认识了,就不再是以前的东西了,好不好理解,大家一说,大家又糊了,你是啥玩意啊,这完全听不懂啊,这,是吧,我刚才说了啊,来这在加密第一次的,对不对。

下面第一次的我写到这个file后面去,它是能自动识别它,还是能不能还原,为什么,因为你加密一次它能识别到啊,它能自动把解码,浏览器会解码一次是吧,那可能就说我绕过他诶,我就再把它加密死。

唉想法是美好的是吧,你就不再加一次,但是你再加密一次的话,正常代码它是不能够执行的啦,正常代码它是不能执行的啦,是因为它这里头有个ui code,他再帮你解了一次,所以才换原,是这个原因。

如果他不写这个,你刚才用这种方式去写代码,就会有问题,因为他浏览器解密时就变成这个,这个就不再是以前那个啦,就不再是以前那个源代码了,就不是这种东西了,他就不可能再解了,它解不出来了。

他就会认为这个就是本身的东西,那这和他相差太远了,就不是一个概念了啊,所以呢他是自己呢在这里就加了个UNICODE啊,所以呢你就用二次编码去绕过它,然后这个AA呢是张微的啊,张微的。

他这个呢就是说你直接写的话,他不行啊,张威的还有一种方式呢,就用这个凯撒一三,这凯撒一三是啥意思呢,就说在这里呢他不是有这种写法吗,贝斯纽斯他还支持这种呢叫STRER,凯撒的一个加名。

然后呢把这个后面呢改成一个加密方式,用凯撒加密呢去写啊,这个也行,这种人呢也可以用凯撒加密啊,之前都是用贝斯缪斯加密写嘛,那现在用凯撒加密,这凯撒一三加名呢在这个pp里面是内置的啊。

你可以看一下这个文章,给他打包的就是它的载荷啊,来啊,在那个文章里面唉其实这些东西呢没必要讲,这个完全都是CCTF喜欢考的,你不讲啊,又是喜欢问哎,这不是不是这里啊,不这个不是这个,好啦选了逼文章呢。

这里,那不不哦哎呀不是这逼文章,哎呀他妈的这鸟毛文章也不知道放哪去了。

这个不行,不知道他那个载荷啊。

嗯是这里看这里也有写到。

都没写都没写,嗯这个应该有吧,这写的啥玩意啊,这也没写,唉你要查一下那个伪协议,那个具体的那个操作才可以啊,这乱七八糟的一大堆,唉不是这篇文章啊,这还搞错了,打个对,就是在这里呢我们可以看一下啊。

这个写法里面呢前面的都是用这个贝斯六四嘛,他用这个贝斯六四啊,在呢可以替换的,你看啊,他是这种写法的,之前是这样写的,Base 64decode,然后现在用这个什么E3的,然后再去写入这个二点pp是吧。

前面如果说这里写成rider,就是读取二点pp,但这里呢我们是写入就是write啊,前面是finder write,就读取二点pp,就后面不用加了,因为你写入文件要告诉他写什么内容嘛,他就让他写什么。

写这个内容,这个东西就是用凯撒加密的啊,刚才那个贝斯缪斯呢就是把那用了,用这个加密能理解吧,所以当他用这种方式也行,写个二点TP,那么先进行一个加密,然后呢再把它进行加密,好两次写到这里面。

然后呢写这个content的啊,刚才是base64,现在用凯撒找到这里,ROT3啊,协商这个代码啊,来改程序,然后呢他的代码写的是二点TP,来访问一下二点pp,其他是没有这个文件的啊,没有这个文件的。

没有这问题的执行再来执行,密码是差嘛,你改成差,OK呀这个呢就是换这个写入文件这个协议的,其实前面的都可以换啊,都可以换,像我们关注到啊,前面在这个读取文件的时候呢,他利用的是这个也是批评put嘞。

还是这个finder write写入,那前面是write啊,他都是用的这个贝斯纽斯的啊,去读取pp for,然后呢把它转换成base64好,现在呢就是写入的时候呢也是个base64啊。

我们加上这个写入代码呢,也是把它搞成base64,现在呢就是说换了个write,然后write里面呢又换了这个里面值,来让他实行个凯撒一三的那个方式啊,主要是绕过一些这种检测,这个下面这种写入代码的。

他也可以用这种方式,嗯然后呢像下面这一关呢就也简单了啊,我们可以看一下吧,这个89关也是下面几关的。

把18关吧。

那看一下啊,这个过滤呢就是过滤pp啊,过滤这些东西,那这个简单啊,呵呵你这过滤pp我们用date协议就完了呗,哎什么鬼啊,这然后呢用电力写就完了呗是吧,呃我这里是这样写的,但这一关呢有个注意的地方。

什么注意的地方呢,大家看一下啊,来你这样直接操作他是能够行的,虽然说这里能够行啊,那他能把它读出来,但这里呢要注意啊,我们先把这个呢先通关的写清楚了,然后我们再看普通关的啊,你看这里啊。

我如果说不进行base64的话,那肯定就要考虑pp的那个过滤了嘛,所以我要贝斯缪斯,就把pp呢关键词呢用贝斯六四呢给他绕过去,用base64,然后这里呢就要写那个代码,然后你看代码中呢我去写啊。

比如说我这里面写一些代码啊,大家看着,那我写这个代码把加密,你看他就等号是吧,来读取这个东西,比如说这里呢我去好执行个代码吧,写一个这个批评波好吧,我就说执行这个代码,你看他有加号。

然后呢你把它写到后面去,你看下啊,执行看到没错误,为什么,那为什么会错误啊,大家可以看一下啊,是因为什么,因为你看到啊里面的过滤加号,它过滤等号,所以你这个贝斯流斯呢不能有标点符号,那该怎么办呢。

就想方设法嘛,当然不能有啊,你加嘛看看哪个能生成一个不能有的,随便加一些东西进去是吧,看哪里这个他不有,对不对,啊都有他妈的,你说这尴不尴尬,诶,诶刚才那个没有哎好这个没有,你看啊,但这中间又有了。

咦这他妈的你真实的,所以呢看了很多就终于生成这个没有这个的,你把它解密出来之后呢,你可以看一下啊,我再看一眼线,这个是这样写的,你看这样子呢他就没有了,加密之后,那就是一个没有加号,没有等于号的。

所以你就过滤不了输出,123呢用tag c啊去读取这个所有pp文件,然后就把那个带辅料给他给读到了好,后面呢随便再写个关键字,你把这个去掉,那就有了是吧,现在就没有哎,你再接个哎又有了,哎这个就没有。

你看这个就没有啊,这个也行,是不是都可以,你换上去,那他也是完全OK的,是吧,当你有了之后呢就不行,你写一个呢,有了有了之后,那你写上去,那就不好意思了啊,这报错了来代入好,这个没什么说的啊。

这个就是这个就是这个地方的一个注意的地方。

没有其他的,然后呢再是这个最后一关。

这89关就不讲了啊,八九关和88关一样,好最后一挂啊,他最后关呢就和刚才那个凯撒呢有点一样,就又换了一种加密器,刚才用到的是那个凯撒贝斯尼斯,那现在又换了一种呢IICO的一个加密,这个呢要查一下资料啊。

他这里面有一些这个东西,我自己看过一篇文章啊,首先你用这个从现在来去操作它,它没有过滤pp嘛,那过滤的是这些协议,他唯独那就把没把pp搞进去,所以他就故意留了个空子给你,那你就用pp的协议那去凑合它。

它过滤的那个什么ab啊,date呀是吧,并put呀呢,还把这个凯撒拉也过滤了,被四六也过滤了,对不对,他就是那哎没过滤这个什么这个pp,然后呢你用pp的呢,换一种呢用这种写法去读取。

写入一个A点TP文件,然后A点pp文件呢还去写入这个什么,这个代码,那这个代码是怎么生成的呢,就是你用这个脚本生成的呢,用这个脚本生成的生成的,大家看一下啊,就利用这个ICO的函数。

PP的一个内置的一个加密的东西,这个呢我等下给他找到那个文章出处啊,再看一下,把明清一下啊,那他就把这个代码呢加密成这个模样了,然后呢还原之后呢,这是第二个啊,二次方程就是还原的写法,就把它还原了啊。

第一个呢就是把它进行这个用这个模式呢啊,把结果呢等于这个变量,把结果把它提出来,就这个东西呢,IICO呢去把这个代码呢给大家进行一个,用到这个模式呢啊,后面的就是用这个东西呢再把它还原出来,好理解啊。

所以呢它就是变成这个了对吧,选这种模式,你可能说为什么要用到这个模式呢,直接写代码不行吗,又没有过滤这里,但是过滤上面的,它过滤三面吗,上面你写这代码他也过滤啊,能理解吧,所以其A点PP呢。

密码是A然后我们再访问这个什么,给点dd,再来A点A塔去执行KS命令,再读取flag,点C图吧,直接写出来,嗯是吧,这里是那个CCTF,求关于文件包含的所有知识点的一些,过关的一些情况啊。

嗯82关的有点遗憾,他那个妈的条,你这把关了有点尴尬啊,我之前没看到,搞完了之后呢,发现里面都是不关的啊,只能大家下去自己再测了啊,等他开了时候再测,嗯好这一关呢就讲这么多,然后呢。

我们再把那个刚才那个这里面,不是有这几种方式嘛,呢还有这个这是一种环法嘛,大家讲到这个除除啊,大家说一下嘶这位嫌疑我要找一下啊,嗯看能不能找到网上都写的不全呢,唉在网上都乱七八糟的一些事情。

这个也没有啊,这个是什么时候的文章,202年4月多号,嗯应该只是在转换过滤器啊,大家看一下啦,来是不是这里写了,你看还有这种模式,你看看还有个qu print的,那等下来个train等同于这个函数啊。

还有个大小写,他就是来源于这个字符字符串的过滤器啊,还有那个来源文章,把这写上去吧,就是说关于伪协议里面现在各种各类的啊,里面还有一些更深层之类的,那CCTF呢就喜欢考这些事情啊,只要受到威胁呢。

你自己呢先把这东西搞明白啊,多答一点题目呢,多了解一些,然后还有像你我们没有讲到的这个什么鬼,zip协议,还有这个冰zip是吧,这个呢他有点在实战中比较少见,CTF有时候需要搞,他需要这个压缩包的。

就说你要里面的开放的那个就是pp呢,它在安装的时候呢,它这个地方呢是有个这个拓展的,那有些呢就是呢FTP是吧,还有呢有这个什么BZR这种,就是他开了这个拓展之后呢。

他才能支持用PPP来去进行文件的解压这个操作,所以他开了之后呢,这协议才支持啊,不开就不行,你看他的操作呢,就是说用zip的去建一个文件是吧,还有这个BISIP的也是差不多道理,zip的也是的。

就是对文件的一些解压呀,包括一些操作,还有这个PHAR有点类似于zip造成命令执行,他们呢都是有条件的啊,一般在那个高端的那个CDF的考题里面,可能会涉及到这个PAPHAR,这个协议的利用。

像那个zip呢比较少一些,这个PHAR呢在反序数花里面呢,我们也经常用啊,还有包括那个后面讲到的那个呃,讲的那个什么鬼,那么执行里面也有啊,所以这个伪协议呢我们今天只是讲了一部分啊。

后面还有一些其他的呢也要讲到,好我们这里呢就说这么多了啊,这是今天这个内容啊,就讲这么多了,时间关系我们就不给他啰嗦了啊,讲完这么多啊,好这个文件安全呢我们就还有几个点没有讲啊,就是包括这个删除啊。

下载呀,读取啊,目录编辑的一些情况啊,那下节课呢就把那三四个轮的讲啊。

因为那30个漏洞,那不是很不是很重要啊,要人不是很常见的一些漏洞,到时候我们再给讲一下。

把文件安全一讲完之后呢,再讲其他的啊,文件安全就是包括我们说的这个文件。

包含呐文件上传啊,文件删除啊,文件下载啊,文件读取啊,对不对,那比较重要的两个漏洞就是上传和包含,删除下载这些东西呢,这些呢就是不是说很多存在,因为这个文件删除和下载的,都是一些功能上面的一些漏洞。

就是说网站本身呢就有这个文件删除和下载,才会产生这样漏洞啊,否则的话它不会产生这样的洞。

如果这些网站呢没有提供下载,也没有提供这种文件删除的一些操作。

那么就不会存在这样的安全问题,但是上传和包含呢。

这是代码中和功能上面,那基本上都要实现的一些两个功能,所以它产生的面料要多一些。

好我们今天就说这么多了啊。

你们老说用那什么简单的什么皮卡丘啊,低费WH给他讲,那都很低端的啊,以前早两期呢我用那个讲,现在不敢用那个讲了,讲了就直接,那就是基础难不完的,那就不用说的,现在呢尽可能的还是偏向于这个CDF的考题呢。

P51:第51天:前后台功能点&文件下载&文件读取&文件删除&目录遍历&目录穿越 - 逆风微笑的代码狗 - BV1Mx4y1q7Ny

今天呢讲一下这个51天了,今天内容比较零散,都是些小知识点啊,有时候呢还是碰不到,讲一下啊,主要是这个文件安全的最后一部分,再加上这个目录安全,其实这个字典呢全部是产生在这个文件管理一。

块的一些安全问题,啧嘶有四个啊,一个是这个文件下载,一个文件删除,那文件下载呢和那个文件读取,那是一模一样的一个鸟毛事情啊,他的这个点都差不多,我们先说这个文件内的下载漏洞啊。

这个文件下载漏洞那其实非常好理解啊,文件读取大家想想想啊,文件读取那是读取文件的内容,那么下下载那就是下载文件,那么下载文件呢也没S把打开看的,打开看和文件读取那是一模一样的。

所以说这两个呢可以把它理解为是一个东西,只是说他的这个漏洞形成呢有它不太一样,但是他的这个影响的这个结果呢是一样的,因为你下载下来也是打开看,你读取,那也是省略了一个下载的过程,那我现在看一下啊。

一般这种正常的文件下载,但大部分都是直连地址啊,大家什么叫指令粒子呢,大家可以看一下啊,比如说像这种啊,你直连啊,直接去访问一个网址,加上一个目录,再加上一个文件名,去下载这个123点PDF。

这种正常的一个什么一种下载粒子,那么还有一种情况下载呢可能是这种模式,就是说加上一个网址之后呢,后面传递一个参数啊,参数值和一个参数名,那么这个参数名呢就是我们下载的文件,那么我呢通过更改这个地方呢。

来去下载不同的文件,那么如果说这个地方的参数值,没有进行这个过滤的话,那么也就是说呀,你可以呢把这个东西啊,把它换成一个什么要下载的文件的路径,然后呢他就会尝试去下载个文件啊,大家又会问了。

就说那我直接在上面去换那个文件路径,不是一码事行吗,是这样的啊,我们都知道这个网站呢不是说你放任何文件的,都是下载,有些文件呢他是在网页上面去显示解析了,那除去一些这种常见的之外呢。

像一些什么其他格式文件,像什么压缩包格式,zip啊,RAR呀是吧,这种下载类的格式呢他才会下载,对不对,那么如果说用这种协议去传递的话,那很可能就是说非下载的协议呢,也能装到夏天来,好这样说呢。

不知道大家有没有理解啊,那么利用点就是说一般通过这个下载呢,去下载网站的一些这种配置性文件,像数据库配置文件呢,比如说系统的一些敏感的文件呢,或者说一些这种带有心细的一些文件哪,下载下来之后呢。

去通过翻阅里面的一些敏感资料呢,在对后期的这个渗透测试呢有帮助,这是他的第一用啊,利用我们就不说了,我们先说他这个燃理情况啊,那么这里呢我们就给大家去演示一下啊。

首先呢我们先给大家看一个有异响的一个安全。

然后呢我们在。

是吧,再再给来看这个一个案例哈,也找不到好的了啊,给他看一下,那这是一个网站,我们这个下载的呢,一般就是产生在这个文件下载的对吧,大家可以看一下啊,这个打开一个这个地址啊,这里呢有这个下载的一个地方。

然后我们点击继续下载,把这个链接呢给大家复制一下,复制这个链接,我们关注一下这边的一个这个东西啊。

来看一下啊,关注一下这个地址啊。

来看一下,这是那个地址,大家可以看一下啊,我们直接这样子呢分析一下啊,那如果说正常下载呢,是直接访问那个地址的完整路径去下载,那这个呢大家看到他这里有个参数,S等于一长串。

那这个呢很显然比较类似于我们说的那个贝斯,六四,我们可以尝试性的呢把它进行一个解码,看一下啊,好这里解出来的结果呢是这么一个东西,大家可以看到,那么也就是说其实它解码的词呢,就等同于这样去加它的一个值。

大家可以看一下,这个呢应该就是那个网站的一个啊,就是那个APK的那个下载的一个情况,那么你可以试一下啊。

比如说我这里呢去点击下载它,大家可以看到呢,他的名字呢就是BSTV30点bl,多包点APK大家可以看到啊。

来这就是他这个名字,我们这里能看到的也是这个名字是吧,如果是这种直连下载的话啊,那直连,那有可能他的地址信息会是这么一个模式,那就直接访问它的完整路径在哪个目录下面,然后选择这个app是这样指定下载。

但指令下载的话很简单,如果说你这里改了,比如说这下面有个疑点pp你这样去访问,那么它是解析这个什么,解释个pp对不对,所以呢他就不会下载,那不会下载的话,那这个pp的代码呢是看不到的,对不对。

但是如果说你按照这种模式去下载它的话,我把这个东西呢把它以这种情况去传过去,然后呢,按照他的特有的这个加密的,这么一个模式去加的话,那么应该地址信息就是一个什么,把这个一加,走这个路基,对不对。

那这样子呢去下载的话,就是利用这个下载协议啊,下载这个什么这个pp,那么啊文件的源代码呢,啊可以看到是不是这个意思啊,所以说其实这个下载漏洞呢,它的安全问题就是产生在这个下载的文件。

以这个什么参数值取发送解析下载,那么如果更改这个什么参数值啊,就是就怎么样自定义下载我们的这个,文件对不对,就这么一个概念,所以它的安全问题呢就是这么影响的,这个呢我举这个例子,大家可不可以看到啊。

就说能不能知道这是什么一个意思了,就是说安全问题为什么是这么个漏洞啊。

就我们那写了两个例子嘛,直连下载啊,它就是安全的,就说你只能更改后面的这个东西去下载它,但是有些文件呢你访问他是不会下载,它是解析的,下载和解析是两码事情,解析就是执行后的结果。

下载的就是把它原封不动的保存下来,那这两个是不一样的,所以你去访问他解析的,看到这解析后的结果,而你这个下下来就在源代码里面都在里面,所以你用这种方式呢,它只能下载它只浏览器解析的那个,下载协议的文件。

而如果说以这种参数形式的话,你给他传任何东西,他都能去下载,把它下载下来,那么就是里面的源代码文件,那么如果说我能知道对方的数据库配置文件,包括其他文件的话,是不是就可以进行对这些文件进行下载之后呢。

查看了呀,好那么既然如此,我们现在呢是吧,在本地演示化也没有太大关系,我们找了一个这个国外的啊,国外的一个站啊,存在这个下漏洞,给大家具体演示一下呀,你不要问怎么找到的啊。

我们等下后面会说那个关于他的一些这种啊,这种漏洞的分析,包括如何找,会给大家单独去说的,来看一下啊,这里呢有个这么一个网站,大家看到啊,是这么个网站,这是一个,国外的啊,美国那边的太慢了啊。

那我这开着代理,我把代理关一下,国内的我们不敢乱尝试啊。

啧有点卡啊,哎这是那个哎那个粘了啊。

就这个呢我把它翻译过来了,这个是翻译后的那个情况啊,打开看到了啊,来这是一个国外的一个点啊,你看美国的啊,这里的美国的一个IP嘛哈,额然后他的这个漏洞呢它产生在哪里啊,我给大家看一下啊,啊在这里啊。

这条路径我们看一下来,他的有个路径呢是files,然后一个叫radio fpp,然后后面呢传了一个file file呢给的地址啊,这个地址怎么知道的啊,这个地址是通过目录爬行扫出来的,就是看到这个地址。

那就比较明显啊,读取文件的话,后面全都file,然后呢我们可要传递一个什么,你看啊该传递一个就这个名字,就是把这个文件的传递过去,因为这个文件呢是在files目录下面,那我传传的是这个呢。

就是它直接获取这个自己这个文件,来点击一下访问,那是吧,它就提示了这个下载,看到没来,如果你直接访问这个pp文件,它是不回这个提示的,大家可以看到的,我直接访问这个文件,那他就是空白空白。

那你在这里他看不到任何东西,空白的是吧,然后呢刚才那个路径呢把它写上去之后呢,啊对不对。

它就下载了,下载之后呢,我们打开下载后打开,你看这是它源代码,你看它的本身的源代码是怎么写的,接收file参数,然后呢固定这个文件的头,然后它采用这个什么下载协议,那去接收。

并且来进行这个REDFIRE的一个读取下载,所以他下载呢是通过这个代码执行过来的。

这是一个下载的一个那个pp写代码,那么试想一下,我再尝试去下载他的首页文件,你可能问我怎么知道还有哪些文件呢,这个批评文件我怎么知道啊,一般它有个首页吧,就是说你访问这个地址。

它的首页文件一般大家都知道啊,所有文件如果说是pp的是吧,就是应该都是什么d index pb是不是在这个下面,就是所有文件访问,这个和直接访问是不是一样嘛,你们所有文件index嘛。

我尝试先这个是默认的吗,那其他文件我可能不知道,我尝试下index,那该怎么办呢,是不是就写成index p p啊,这样写行不行啊,那点下载下载后呢,它的确能下载。

我们打开一看哎变成这个东西是啥情况,难道他首页文件是这个代码吗,显然不是什么情况呢。

因为首页文件是在前一季目录,你可以看到他这个read file呢,刚才下载的是read file,我这里直接加上去的时候呢啊写这个东西是吧,他去下载这个read file是在这个目录下面。

那首有文件是在files这个这个目录前,那就说我需要怎么样告诉他两点斜杠商,一级的index点app是这样写啊,来点击确定。

然后再去下载,我们再看这个,你看打开之后呢,哎这个表代码是有不同了呀,这就叫首页文件,然后通过里面的观察呢,可以看到这是一个什么j blog的一个这个程序,你可能会哎你怎么知道啊,这个就是经验了呗。

你自己多关注,你们就这种注释代码,有可能就是版权和这个名称的意思,而且这里面包含了很多文件,你看这有取得很多路径下面的文件,这些文件都可以尝试性的把它去下载,然后一个个下载呢一个个包含。

那么大家都知道写程序很忌讳的一件事情,就是我们说的经常会包含一个,数据库配置文件是吧,那么很有可能这里就其中一个是有,数据库配置文件,一打开不就可以得到数据库账密码吗,那么这里呢由于它告诉你。

它是个JMOL的一个这个程序,我们可以尝试一下呢,在网上找一下这个z blog。

它的数据库配置文件呢在哪里是吧。

哎这没写,妈的都没写啊,数据库配置文件是哪个哟,就找一下路径,你如果说实在不知道,你自己下个圆嘛也是OK的啊,就我直接找他那个数据配置文件在哪里是吧,直接访问它就可以了啊,可访问它,你如果说不知道的话。

你下个源码翻译一下也是OK的啊,自己答间隔,因为我知道路径的话,我直接就去下载他那个东西啊,妈的。

哦这里找到了啦。

是这个叫CONFUKPP文件啊,这个是在这里啊,可以看到呢,然后呢在哦这应该是在了根目录可以看到呢,在根目录好,那既然是根目录,我尝试下载一下,单把替换到根目录嘛。

就和index统一目录那点下载能不一样哦,有打开看一下什么鬼,诶,打开一看哦,出来了,你看host look host,用户密码dB,啊对不对。

所以说呀这个呢就是我们说的这个文件下载呢,他的一些这个后期的利用啊,这里呢我们就下载一些几个敏感,我简单给他看了一下啊,后面虚拟应用呢我们就不讲了啊,就说这个呢就是一个文件下载漏,那带来的危害。

你可能说这是什么问题呢,其实就是说网站呢它开放了这个文件下载,然后呢它的文件下载呢有几种实现模式。

一种实现模式,那就是我们说的直连模式啊,你就说直接访问这个路径地址,能让他下载,还是那就是我们说的以参数传递,那如果说是这种参数传递的话,我们尝试就更改这个路径是吧。

让他去下载我们它本身不让下载的一些文件,然后呢实现了这个把其他文件下下来。

因为是像这种文件,那你直接访问它,是你直接访问这个文件,那他是看不到任何东西的,你直接访问呢,它显示就是空白,因为呢它没有任何执行架构来显示,就是空白,只有下下来才有得到你们的源码的机会。

直接访问的就是解析了,解析里面由于本身就不做任何事情。

就是声明的一些这种值,所以就不会有任何东西对吧好。

这个呢就是说到文件这个下载一块的,这个问题啊,这个呢我们就不再给大家细说了,包括这里呢,我们还可以尝试下载他的这个什么啊,系统上面那些文件,你可以说系统上面有哪些文件呢,那这个就多了,我可以看一下啊。

呃他是有很多的这文章呢都给大家看一下,但这个系统文件呢说实话不影响呢,还不是很大吧,呃这个系统文件你可以看一下啊,呢那这是一些常见的LINUX的一些系统文件,这个windows的对不对。

你首先得搞清楚对方是什么操作系统啊,尝试下载这些文件,但这个文件呢有没有用呢,就下载下来之后呢,啊可能它的用处呢就不是很明显,因为怎么说呢,啊有可能还下载不了,为什么下载不了呢,大家都知道啊。

有些网站呢他是做了这个目录的这个设置的,就是说你不能跨目录去下了,他可能能把你固定到某一些目录,你可能只能针对这个源码那些文件进行下载,如果你跨越这个源码,那就不行了,权限达不到,会有这么一个情况。

所以在系统文件你要下载的话,首先要支持,而且呢你即使把这个系统文件,一些东西下载下来呢,说实话它会有很多一些策略,比如说像以下载一些文件,当然也得不到任何东西啊,只能说对他的网站信息的了解的更多。

但可能得不到一些直接的效果,但是你如果源码上面那些数据配置文件呐,或者说密室文件呐,那这种呢就可能会和网站安全的直接挂钩的,所以他会更直接了当一些啊,当然了,网络文件拿不到的情况,下面是吧。

那你可以尝试下下,下一下系统的一些这种敏感文件啊,最好呢还是针对网站方面的一些这种文件,进行下载,会更好,好,这个就是我们说的这个文件下载啊,那么还有一个就是我们说文件读取。

那其实文件读取呢和文件下载是一码事情,对不对,它是一码事情,我们可以演示一下啊。

什么是这个文件的读取,那你给个眼看一下啊,文件读取呢即码实行它等同于是下载,我们找一下这个巴巴苏特上面的这个八分。

来看一下,它上面呢有很多题,但大了也可以刷一下啊,但是访问有点慢,他这个访问是有点慢的啊,这里呢你看目录便利的啊,这我打开给他看一下啊,但是它里面的题目呢还是比较多的啊,就是说大家如果说自己省得搭建呢。

要测一下简单的一些漏洞的浮现呢,那可用一下还比较方便。

有点慢而已,因为他国外的啊,这是他一个地址啊,我们看一下啊,你看他这个是什么个原因啊,其实种豆腐都是这么一个情况,你发问那里看到啊,这里有张图片是吧,你别点一下了,点一下这个图片新闻。

然后呢你看到啊这个地址,然后你看下这个图片啊,右键那个图片地址的时候,你看一下啊,图片地址里面的,你看啊,imagine file name等于起点JB1哦,那应该就是说哎。

他这个图片呢就是通过这个地址加载出来的,那起点JP1呢就是个图片,应该是啊,那尝试如果说把自己改改成什么点点斜杠,点点斜杠,点点斜杠,什么etc杠pasta b是吧,这样一执行,然后他没反应。

没反应不要紧啊,我们可以试着去用这个招工工具来看一下啊,因为这里看不到源代码,我们用抓包工具在那上面提交看一下,有的时候呢就是说大家呢用这个什么。

好快来抓个包。

好这里呢装个包之后呢,把这个地址啊,我们发到这模型下面去啊,好上面信息把改一下啊,直接放我这个地址来勾,那是不是啊,这就是得到那个etc p答D的,你不要说为什么一测就测这个。

因为像这个什么省略它LINUX系统啊,这些东西就不看的嘛,对不对,那个你可能说为什么要在前面点点点斜杠啊,那就是跨级目录嘛,跨了三级跨到根目录去是吧,如果一级不行,你死两级死三级多死几次不就行了吗。

对不对,你看就是吧,上去了呀,那如果windows的话,那就在windows上面一些常见的系统文件了,windows系统文件就是刚才看到那个文章里面的吧,其实这个东西都一样啊。

当然了你也可以测他一些其他源码的文件是吧,也可以测自己的制造目录来加工,来去分析也行是吧,它上面都有啊,这应该活学活用啊,活学活用啊,就这个意思啊,就是说呢多去测一下那种参数值的啊,因为你要想象下啊。

他就加了这个图片,然后后面刚好那个地址呢啊,就是刚才我说的嘛,他这个地址呢就是可以明显看到啊,就是这个呢通过file name传参给个起点JB1,然后你看这个地址呢,再观察一下这个地址。

那就是五点JB1是吧,通过这个JPG的全集呢,让它显示不同的图片,那么你试想如果把这个图片改是吧,改成一个这个其他文件,那会不会加入其他文件的这个源码呢,就这个意思啊,这个就是类似文件读取啊。

和文件下载是等同的,因为你文件下载下来看到结果也是这个结果啊,对不对,这文件读取和文件下载的差不多的啊,无非就是说一个是下载下来了,一个呢就是在线读了,对不对,包括了刚才大家说的什么。

这里换个什么shadow是吧,这个呢就是自己想测下,你看他这里,那就不乱看SHADO了,因为他这个是靶场啊,他如果说你都能看的话,把它拿下了,那那就尴尬了,好,这个就是我们说的这个文件下载和文件上传的。

相关东西,其实把这一看呢大家也知道了啊,他在黑盒中的一个测试呢,就是关注几个点,我们要讲讲了他在黑盒中的一个测试,就说我们不知道没有这个程序源码,我们如何去测中有没有这种漏洞呢,主要是看两点。

第一点就是功能点,第二点就是药药的特征,一是功能点,啥意思啊,既然它是文件下载或是文件读取,那就说肯定是和这个功能相关的,它没有文件下载地方,它怎么会有下载的东西产生呢。

所以说你通过就是找这个网站的那个,这个有这个功能的地方,通过这个功能的实现来分析那个UL的路径,是不是类似于这种传参的模式,通过它修改这个参数值,来看一下它是不是能够你修改什么东西,它就下载什么东西。

那就有就这个意思能理解吧,然后这是第一种啊,就是通过这个功能点呢取车,还有一种呢就是直接看UL地址对吧,又要地址上面呢有这种关键字的什么灯啊,read fire reader呀是吧。

直接告诉你是什么作用的一些英文单词,而且后面的参数名呢加上的是什么file啊,或者什么file lion啊,file pi啊,这种文件啊,文件夹呀,文件名字,这种英文单词的东西指向后面那个参数值。

那么这个时候很有可能,它代表的就是去加载一个文件,那么试着呢去把这个加载的参数值呢,改成你想去测试的那个文件,那么如果说能够实现的话,那么就恭喜你找到了,如果说不能实现的话,那要么就是没有漏洞。

要么就是他有顾虑啊,就这个意思。

然后呢除此之外大家也看到了,像刚才这个呃这个下载漏洞,你看他的词呢还进行加密,它就有点类似于我们那个circle注入一样的,就是把那个参数的进行加密了,如果说你有懂加密的话,哎你把它换算,那还原出来了。

你再把你要加的文件呢,再把你写写完之后再加密是吧,一样的道理,所以呢这个原理方面的很多知识点的,一些这种技术啊或思路的都是通用的,你学好一门的很多东西呢啊都能自己去了解。

我不这样讲,那你也应该知道怎么做啊,这好这个呢就是我们说的在黑盒上面的,那肯定大家说了,那白盒上面呢是吧,代码方便分析呢,代码分析分析就和其他漏洞一样啊,根据这个相应的这个功能点。

或者说根据这个相关的函数,就说他怎么实现文件读取的,那无非就是文件读取内的函数啊,怎么实现文件下载呢,那就是文件下载的这些操作啊,搜这个地方有没有这个东西,从代码中去翻这个东西。

然后再看他控制代码分析的,有这么一个思路,都是通用的,嘶好,这个呢,就是我们说的这个下载和这个读取方面的,一些这种操作流程啊,那么这个文件删除也是一种安全隐患,但这个山竹呢说实话在实战中呢。

一般车的话他也是一个比较危险的漏洞,车呢也不好测,大部分呢就是说影响的话,就会影响到业务的一些安全问题,因为删除大家都知道啊,这个删除不是个好事情,你不小心删了,那就可能这个是吧就喝茶了啊。

所以这个东西呢,但是他漏洞说实话在实战中很少见到,第一个不是说他这个漏洞很少,主要是删除这个功能比较敏感,第二个呢就是一般有删除的这个操作的地方呢,一般都是在后台里面居多,就说网站呢是有一定权限之后。

就说你哪些用户登录到后台里面,可能有这个3D操作,就说你个网站打开,谁会给你一个这个删除的地方啊,一般不会有吧,所以说一般删除呢它产生的地方,一般就是在一些这种用户授权登录后的地方。

不管是普通用户或者说后台用户对吧,他才会有这种类似功能,就比如说你个人中心里面,删除你自己的文件是吧,然后呢像后台里面的去管理一些这种垃圾文件,去删除,是这么一个流程,对不对啊。

不想说是这个前台里面用户没登啊,他就给了一个删除,那删除的是什么东西呢,这不符合逻辑啊,所以说这个文件删除呢它比较鸡肋,鸡肋的地方不是说漏洞少,而是说它产生的地方呢,我们很多情况下面接触不到。

因为你本身你都你就本身是挖漏洞,这个漏洞产生在后台,你登都没登进去,你怎么撤呀,好但我们在这还要讲一下啊,来我们给大家看一下啊,比如说像现在啊我们搭建这个网站,这是一个cm s啊,呃和常规列车一样啊。

那后台里面呢有这么一个地方,你看啊,这里呢可以看到啊,这里呢有些文件这里呢是提供这个删除啊,然后呢删除了我们可以试一下啊,来啊,比如说这个文件我们点删除,对不对,可以看一下啊,这个删除的一个路径的地址。

我给抓个包啊,大家看一下,那我点击删除,把那个包抓到。

好这个包抓到了,大家看一下这个路径地址啊,那你看到啊,那上面是不是传递了一个删除的这个文件,参数值啊,这里对不对,刚好指向的就是刚才这个我要删的这个文件嘛,啊那他在这个目录下面对不对。

那我你可以说这个删除有什么意义呢,一般你可以尝试性的删除一个文件,这个删除呢就是你按照正常来讲,你只能删除这个地方嘛,他说只能给你删除这个,它显示一些文件,那我尝试能不能删除其他的呢,那我可以试一下啊。

我先找下源码的一个目录,这个删除呢一般配合的,主要是配合这个删除这种锁定文件,锁定文件是啥,锁定文件一般就是那种安装的锁定文件啊,你也可以删除其他的,但是危害比较大啊,一般测到这里就好了。

这in store里面呢有个叫in store,点lock点TT这个是啥玩意啊,先给大家访问看一下,就大家知道了,来我访问这个in store啊,访问他先把这个放出去,那我如果要重新安装它的话。

访问这个目录,它会让我说删除这个文件,那就可以重新安装了,就你安装之后,他怎么知道你这个程序安装过是吧,他有通过这里面有个锁定文件,你如果说把这个锁定文件删掉,那不就是重新可以安装了吗。

那我尝试修改删除这个文件呢,那怎么删除它呢,那我试一下的,我直接的把这里改是吧,来改这个地方删除勾,他说只允许删除TMP目录下面的文件,你看他有过滤,对不对,但这过滤呢通过这个上面理解的话。

我如果不看代码,那我试着尝试一下怎么操作哈,先把反原,后面加上点点斜杠,点点斜杠哎,加就是加几个点,那这个无所谓啊,你可以加一个点试一下勾啊,他说目录存在,目录存在,可能是我级别不够,我继续呢加一点点。

是不是跨越级不够,因为他这里呢是在删除文件呢,是这前面三集我再继续加两点再试,还是目录不存在,继续加,还是不存在,再加价,还是不存在,那他可能就不是这个问题了,那我试着去把这前面删掉一部分。

他不是说要在这个目录吗,我尝试着切换到这里来勾一下来看,他说不存在,那我删进目录看一下,哎好操作成功了,你看可以了,看一下这个文件没了。

再访问一下这个目录,重装了,这个主要是说一般只说车的点呢,就像这样车他啊,当然你在实战中的,你不要这样测啊,你实战中的话,说实话你要测就自己的重新创建一个新文件,小文件,那删你那个文件。

如果说能删除测就可以了,你不要删除它本身文件,你删除本身文件,那出了问题就完了啊,这个删除是个很高位的操作,不要乱搞,啥意思呢,其实就是说他这个本身的功能,那就是让你删除一些可控制一些不要紧的文件。

但是通过这里呢,哎也就实现了删除了一些其他文件,对不对,就实现了任意删除,那你加很简单的道理,那你是不是可以直接把他文往前往上搞崩啊,比如说这里呢有个什么有这个index pp是吧。

它本身呢仿网站都是正常的,你这仿网站的都正常了是吧,你这里咔嚓给他把他首页稳定一三是吧,这里改改成什么INDUST,点p h p go,提示操作成功刷新一下网站,不好意思,直接崩了对吧。

打不开了,这不尴尬了吗。

所以说这些东西呢不能乱操作的啊。

所以这个就是删除,其实他也没什么太大的一些好讲的,讲的就是无非就是在那个网址上面,那去不断去尝试去修改什么点点斜杠啊,点点斜杠呢去跨目录啊,尝试呢去这样去操作它,然后呢把它删除是吧。

但这个操作呢说实话实战中的话,一般就自己创建一个文件,删除一些你自己创建的文件,点到为止不要去尝试删掉它原本的文件,那你删的不对的话,那解有问题的啊,好其实这下载也好,文件删除也好。

他们都有个共同的特性,特性呢都是通过参数传递去给值,然后让让它去删除,那么一旦控制不好的话,我们给一个他原本不想要的东西给他去,那么不就把这个原本不想要我给删掉吗,就是他本身这个网站那是设计的。

就是说让你去操作一些功能的,但是通过这个参数的一些不受空啊,导致了你把一些其他东西呢也代入进去了,这危害就由此产生了啊,好这个就是关于文件类的删除啊,我们想想啊,这个上传下载读取删除。

这就是文件的几个部分的安全问题啊是吧,商传安全下载安全包含安全读取安全删除,安全没了,其实呢还可以有边际内的安全,啥叫边际内安全呢,借好理解啊,我给他举个简单例子,他这里不是能编辑吗,大家看着啊。

来它不是能编辑文件吗是吧,我可以尝试性呢,我比如说把这个修改,我点击重新抓包给他看一下啊,它不是能编辑吗,如果说编辑里面呢它也带有参数传递,我编辑呢抓个包,点下这个修改模板,那编辑了编辑。

大家可以看一下这个包啊,哎画屏哎呀,这他妈的先把关掉,好再来看一下啊,重新发送好,这是他编辑的,大家看到了,那这是他content是编辑的,是内容啊,刚才我加的这个DSD就在这里嘛。

那fail dl什么文件路径,那是不是就是刚才编辑这个文件地址啊,那你试一下,我这里不是刚才这个知道网站目录嘛对吧,我尝试性我编辑一下这个S点pp好吧,你看啊,现在我先打开S点pp。

这是SPP的代码,对不对,我尝试下要把这个替换来看着啊,按照刚才思路,对吧,点点斜杠,S点pp,对不对,我这样写,看他行不行啊,我把它包的保留份来防一下,看下什么,结果操作被禁止。

啧啧你觉得这个被被禁止的原因是什么原因啊,大家觉得可能是这个2%f的问题,把这里换一下,看一下是不是这个问题啊,因为这里呢它默认都是百分RF操作被禁止,那就说他这里呢可能哪里有过滤是吧,你要不断去测它。

嗯这里的最好是把源码翻出来看,就知道它是什么过滤了,源码翻出来看就能直接直接绕过了,如果说你不看源码的话,你这里也不知道能不能绕过,我们先不说就是湿奴呢是这样子的,那就说我尝试呢本来是修改本身那个文件。

哎我这里把路径改,那尝试性就是修改其他文件,这个好理解吧,所以这都是一个概念啊,都是这么个意思,也是说任意文件的修改都这么个情况啊是吧,通过数据包里面的替换它要修改的地方。

这好不,这还不好理解吗,对不对,你这里呢如果说你要绕过它的话,你可以试着去常看一下燃嘛。

因为这里呢我黑盒测的话,我不知道能不能测出来啊,因为直接看燃嘛是吧,从源码上面可以直接剖析出他这个漏洞的产生。

和漏洞的这个情况嘛,我直接打开源码给大家看啊,找到他那个项目,这这些源码查看呢,在后期的那个代码审计里面呢是经常要看的。

我把源码打开,然后我们关注一下啊。

他的这个数据包呢是产生在这个目录下面。

我们来找到这个目录好,然后呢是ADD me点TMP的这个文件,这里嘛好找了之后呢。

你可以看一下啊,通过他的数据包的地址呢,再分析是这个叫xx等于CF啊,保存的,然后这里有两个参数,content和这个fail dr。

我们直接在搜看下来,X型的呢等于空,然后这里呢有个什么X型等于1it哎,那就知道了,当然如果说action等于CF就是来了,刚才那个的我们搜一下e d class,然后这个是CF,这个是凹在这里。

你看啊,刚才提示的只允许还有个操作被禁止,操作被禁止,你看下啊,他是什么情况,他说这个文件类型呢读取它的类型,如果不是ATM2,TMJS和这个什么cs和TST就提示这个然,大家会问大家。

你能不能绕过它呀,大家觉得我能不能饶过他,看到结果吧,结果就是说取得这个fail dr的值,这FDR值呢,应该就是刚才这个参数名的这个地方啊。

就这个地方呢他就判断这里面呢。

哎他的这个用这个呢这个参数我可以跟一下呢,把CTRL点进去,把跟下来,这个是他配置的这个函数的配置,那他就是取这个什么,取这个后缀的,还取里面的后缀,是不是等于这个点A炮和这个什么鬼东西啊,是不是啊。

能不能绕过,大家觉得,前面这个好,就前面这个呢就判他有没有那个路径就可以了,然后这个呢是判断个后缀。

你不信的话,我可以试一下来,我把它改成这个ATM,你看啊,我看ATM之后他应该就成了SDATM勾啊,超成功是吧,你看这个文件是不是保存到这里来了呀,是不是,但是这个是我们创建啊。

如果说编辑的话,那怎么模式啊,这里还有编辑模式啊,有这个edit模式啊是吧,还有编辑模式啊,编辑模式呢也有来有这种过滤,那说两个都一样,到时候看这个safe的话也是一样的道理啊,这个怎么改呢。

那和文件上传有点类似了呀。

怎么改让它形成pp文件呢,有绕过的过滤的,是不是,大家觉得这里好不好做它,截断这些东西呢也是一种方式,但是怎么说呢,嗯这个东西呀,那你们说这种模式是吧,这是前面讲的那种东西嘛。

哈啊这种细胞嗯啊他说要操作成功,然后你看这里啊,打开,这文件呢还是SPP的写进去了,哎你看这文件哎,哎不要卡呀啊,这次还是那个代码啊,这pp呢这个百分零零呢,你看还没有,然后呢时间呢也是刚才的。

所以说这里呢并没有成功啊,这个零零呢你这样去写,你把他这样子搞一下来,我们讲过这个零零阶段呢,它是只限制于这个什么,只限制于那个pp那个低版本才有零阶段,这个概念,高版本没有。

但是我们可以用一种方式叫做什么方式啊,超长的一些这种字符呢去把它咔嚓掉啊,超长支付把它咔嚓掉,就说你在这里呢写了一大堆啊,不知道在结束的时候呢会不会出现啊,当然这只是一种测试方式啊,具体行不行。

我也不知道,啊并没有成功啊,还是这个模样,就说我们都有呢,是这个测试方式啊,我怀疑他这里呢应该是不能创建新文件啊,能创建新文件,应该不能覆盖这个软有文件啊,感觉是应该是不能覆盖这个软有文件。

嗯都不行啊不行好,这个就不是我们操心的啊。

我只说从代码审计的角度给大家看一下,这个是这个保存,刚才的这个删除呢就是个DL的参数,那也是这个模型用到了这个什么,你看unique这个文件删除的东西,我前期讲安全开发的时候,大家有没有印象过。

我们看一下前期我们讲安全开发的一个源码。

大家不知道还有没有影响,打开给他看一下。

这个是当时讲前期开发那个两个源码呢,当时自己给他写的,你看里面涉及到这个删除DL呢,用unique狭窄讲过编辑是吧,那你用过这写过这个代码,那看再看这种他说的是什么,哎这种的删除这个UI壳呀。

这种删除的这种模式不就是差不多的吗,所以说前期你安全开发这些东西搞好之后呢,你后期针对这种不是很困难的代码,你一眼就知道。

好,这个就是我们说的这个文件删除类的,一些知识点啊。

那么紧接着呢文件删除这一块的安全呢,我们就讲到这里了啊,没有什么太大问题,这个文件下载,文件读取和文件删除呢,这俩这三个漏洞呢它是不限制于说是pp语言呢,还是java语言,还是其他语言不限制的。

因为这个漏洞呢产生在任何地方,都有这个思路可行,因为它是一个功能上面的,没有验证过滤的安全问题,而不是说某个脚本特有的入你像你java里面,你涉及到这个什么下载,你如果控制不当的话。

按照他这个逻辑测试的话,也会出现这种质量安全问题,所以说你要知道啊,有些漏洞呢它不是说在某些脚本里面才会出现。

而是说得要看这个漏洞的形成原理啊,他是偏向于功能一方面呢,还是说固定要用那些函数才能实现啊,不一样的啊。

好这是我们说的这个。

呃什么这个叫啥来着,啊文件的下载删除啊,删传啊,还有读取啊,删除这些东西啊,好这个东西呢我们就讲完了啊,还有一个刚说的编辑嘛是吧,刚才有人说什么要听什么冰鞋的魔改,冰鞋的魔改是现在上不了。

现在还在web的课程里面,哪个知识点呢,是在流量混淆,跟我对apt的东西,内网上完之后才有的拉,都到了一百一百六七十克的时候才有,这还有百来克呢,我们再来看一下这个目录的这个情况啊,冰写那个课程。

那可能要到年底和明年的时候才能上吧,那都是尾部的一些课程啊,内网上呢才会有那个东西,我们这期加的那个模改的那些课程是吧,加了三四个工具,前期上期我们简单说了一下cs的魔改,对不对。

那啥怎么现在比较流行的WP工具,哥斯拉的这些东西也有,好我们再来说一下这个目录型的安全问题啊,前面是文件类的,昨天他还有个人问我,还叫我讲细一点,说实话你技术真的很差,他问我这个什么鬼,目录便利。

目录穿越是不是一个东西,不是的啊,你可以把它理解成是个东西,但是不是的,目录便利呢是由于目录权限控制不当,而目录传越的也是这个目录权限控制不当,那这两个有什么区别呢。

没太大区别,目录便利那是什么情况啊,来它是由于这个权限控制不当。

就比如说一个网站目录来你这里呢,这是网站啊,你把这个目录右键呢点击这个属性网站目录,这不是有个共享这个安全吗,它这个里面有些呢就是让它叫列出文件夹内容,里边勾选是啥意思啊,就说你访问这个目录的时候。

它会展示当前目录下面的所有文件和文件夹,就这个意思,其实呢他就和这个东西呢挂钩的,而你访问的用户呢刚好是属属于这个组的。

那不好意思,那就按照这个权限进行,就这个意思啊,那么在中间件上面设置呢,也是有这么个设置的啊,比如说呢像这个网站啊,我们打开刚才那个测试那个地方呢,我打开这个修改它,这个地方有个人叫目录索引是吧。

点一个目录索引,你如果让它勾选上,我们现在打开给他看一下啊。

那你看啊,这个1。3。86指向的就是这个地方啊,先把它打开,那他的访问呢提示这个403÷5,就是他不如显示啊,实体商家都知道他是不显示的,说什么没有权限的去访问他,啥意思呢,就是说不显示他的下面资源。

但是你如果说在这个地方呢,给他在目录索引开点确定呀,在八六端口的嘛啊,刷新诶,它就显示了,看到没,但是呢你又会发现有些网站呢,你再打开它又不显示了,比如说index1打开了,它显示啊,有一些你看啊。

我打开有有些的优势里面一打开哎,它就显示网站页面了,这啥情况呢,他这个为什么有些目录显示,有些目录不显示,这又又是由什么原因造成的呢,其实非常简单,就是有没有首页索引的问题,来给大家演说一下啊。

来打开这个目录,内网的目录,这个是那个sea这个地方,那在这里啊,在打开这个目录时候是请求的这个路径嘛,他绑定是这个是不是这个路线,我看一下,啊包里呢就是这个目录,你看SEACMS对不对。

就是这个目录啊,保零就是它,但是在这个目录下面嘛,哈在这目录下面看着啊,我直接打开它能显示整个目录是吧,那我打个60,它显示页面,打开其他目录呢,唉它显示又显示文件,这啥情况好,你看一下啊。

当我在60这里下面给他一个索引,为什么优势显示它,我把这里那里看着啊,我重新再随便在你创建个一文件,然后把这个index把改个名字好,再打开,你六四你看是不是显示了呀,就不展示了,为什么。

是因为这个index呢,告诉他他他这里有索引,就说他解析这个index,所以你在打开的时候呢,哎他也解析这个index的内容,能理解了吧啊刚为什么打开这里呢,它有显示它呢。

是因为你这个目录下面没有它的索引,你当你只在这里能给一个他的首页索引,什么index啊,这种默认的名字对不对,给他搜,你比以ATM2或pp1打开刷新诶是吧,空白了,那他就不展示了,是这么个原因啊。

这个索引呢就是由这个中间间的,这个什么这个地方决定的,你可以看一下啦,来首页他就以这几个名字的为首页文件,就是为索引,如果说没有的话,那我就暂时有的话,就以这个东西呢为准,就这个意思。

这种呢就是文件编辑漏洞,就是由于你在这里呢控制这个权限不当,导致这里泄露了这个什么,泄露这个文件的意思,那么网站有没有这种事情呢。

那也是很多的,我们可以看一下啊,很多网站的东西,那这东西有什么意义呢,就是对于我们来讲呢,就是对于我们来讲是什么个意义呢,这是关键词,它对于我们的意义来讲的话,说白了啊就是一个看到网站目录结构。

然后呢里面有些文件能下载的就下载下来,下载不了,那就不下,这样子呢能帮助我们呢对网站有些了解,比如现在的我们就打开给他看一下呢,那像这种的都是你看是吧,这网上很多的啊。

哎就这种情况是吧,就这种呢就属于目录便利啊。

就目录遍历这全景控制不当呢。

导致的一些这种文件下载啊,这种东西是吧,还有可能呢啊你一翻的话,哎就把那个什么,比如说咱这你看的有这种敏感的东西。

就把瞎了,对不对,比如说数据库文件备份呐,源码备份文件呐,他刚好在上面诶,你下载不就得到一些敏感信息了吗,但是如果说是其他文件的话,那可能就下载不下来啊,就这个意思。

其实那就是他自己在控制这个网站目录的时候,那权限控制不当所导致的,然后为什么有些目录访问呢,它不显示目录结构,是因为里面呢有一个索引文件,让他直接找到首页,显示那个index去了,十个原因啊。

大家明白,那么这一种呢我们又称之为叫目录变离。

他的这个形成原因就是这个意思,就一打开一个目录就显示了,这也不用说怎么去探究这个漏洞了,因为这个漏洞探针就直接访问访问,有那个反应,就是有没有就没用,所以你不要问说怎么防贪污这个漏洞啊。

好然后再说目录穿越,目录穿越呢就和刚才那个有点相似,你看很简单的道理啊,我们来到刚才那个网站嗯,打进来,那你看这里啊,我们看一下来这里不是那个模板管理吗,你看啊,他就只能看这个TMP目录是吧。

那点一下这个地方,这是针对目录的啊,刚才是针对文件的,现在我讲的是针对目录,那我点你TM对不对,等下这ATM哦,我这里点一下商机,或者我点商机,我点这个东西,我把地址一复制啊,我把地址一复制自然地址。

那你看到啊,他传给他的PY是不是关键字段的,pi等于在一个目录地址,那我试一下,我把这里给去掉,两连斜杠往上面挑一下,看看行不行,挑一个来啊,他说只允许这个目录好了,只允目录线,我就让这个名字先有。

我在挑,进来两年,斜杠跳不跳哎,跳上去了,你看它本身就是说啊,这原本的设计呢不是说这样的,因为它原本的设计大家刚才也看到了,它原本的设计就是你在这里只能看这个目录,你不能跑其他地方看的。

但是啊他这个没考虑到你这个这样搞啊是吧,来跳商机好,我们再继续往上翻了,多挑几集,看跳哪里去了是吧,我多跳几句,是不是跳到什么呢,直接跳到哪个盘符上面去了,我看看源码,结果呢他跳到这里来了。

你看跳到D盘这个PB破了,再往上面跳,是不是就跳到整个D盘呢,看下来,有点卡啊,可能这个我的D盘有点多,因为这个目录结构多啊,卡住了嗯,然后呢你可以再点击这个目录是吧,他可以跳到这个3W类目录。

再继续款3W目录下面的东西,卡住了啊,啊与此同时呢你还可以尝试性的是吧,写个这个盘符,就让他恰恰到C盘试一下,是不是好像报错了啊,可能卡了好调到C盘四下,这种操作呢都是可以尝试的是吧。

我们调到C盘看一下啊,能挑就挑,挑不了也无所谓,啊这种呢就是我们说的这种叫目录穿越,这就叫目录穿越,刚才那个人是目编历,目录遍历,就是固定死的目录在里面翻翻翻啊,目录穿越了。

就是尝试性的跳到其他的目录上一级,上一级跳了整个盘符的根目录,那获取更多有价值的文件,就说你这里那本身是在网的目录下面,然后这里呢跳到这整个根目录,嗯但是也是一个事情。

这个目录穿越和这个什么鬼文件删除呢,这两个的是在后台这种用户权限的,这个管终端页面可能出现的地方,它不会一般不会在前端,因为我们知道啊,像这种漏洞都属于像文件管理期的漏洞。

就说提供的这个文件的这种在线的查看啊,编辑啊,删除这些功能,这些地方呢会产生这种事情,因为正常来讲呢,网站前台呢是不会有这些类似功能给你提供的,所以说这也是为什么说这种漏洞呢它不常见。

网上的讲的人比较少的原因,并不是说它出现的比较少,但是就是这些漏洞啊,他不怎么人很多人去想啊,或者说去那个的话,他反而产生漏洞的可能性会更高,因为呢大家觉得是吧,没有怎么学啊,你没怎么关心。

多半注意是关心到一些重点动作上去了,所以在这里呢他经常容易忽略,因为在这里呢好像看上去这种漏洞呢,像是一种没看过呀,或者怎么一个情况,但事实上啊这种漏洞啊他经常常见的啊。

讲起来呢听上去是很基础很好讲的啊,并没有什么太大问题啊,不讲呢有些人也需要温是吧,就给他开了,这一刻他去讲这个东西,把今天的内容呢就基本讲完了啊,也没有什么太多讲,主要在我们把这两点搞清楚啊。

一个是这个黑盒上面的,还是这个百科上面的。

具体代码呢,这是完全可以在代码中的去把体现出来的啊。

好,这就是关于这个文件一块和目录一块的,安全问题,在这个章节的所有内容啊,嗯下一节课开始呢,我们就讲这个其他方向了啊,就讲下一个漏洞,好这就是我们今天支点啊,大家看有没有什么问题啊,有问题就问。

没办法啊,这个内容就这么多,咋讲呢,你上多了也是这些内容,没办法啊,不是说我偷懒了,不想给他上,不要说实战实战,现在这种东西不适合实战。

这不是说实战的问题。

哪有那么多实战,哪。

CCTF秀有没有必要买,你投资学习吗,还有什么什么有没有必要的事情呢,嗯价格也不贵,几百块钱,你觉得你经常打CDF,那就值得买,你不怎么经不怎么打CDF,那就没必要买,THM的号,我又不是会员。

借给你有啥用呢,里面很多题目都要花钱的,没用啊,最多同时登录多少,你不要问我告诉你啊,这个最多多死多少人,我也不清楚,但是我知道你给个三五个人,十个人用是绝对没问题的,你不要说我说的啊。

你不要把我的话录进去,到时候放给那个官方听,你说别问我怎么知道的,我他妈的也想知,对不对,我也不好说的,我你买的一个号CDF修的号,我买了三个了,前面两个封了,你不要问为什么封的。

本来之前第一个号用的好好的,封了三番两次,别人看面子帮我解封几次,后面直接有人把我那个号拿到咸鱼上面卖,官方实在是逼不得暴风了。

我都很很不想去谈论这个事情。

因为每次谈这个事情呢,对不对,下去就有人找我要,我说他妈不给吧,也违背出租给一给你呢,人一多,我怎么好控制呢啊闲鱼上面又咔咔乱买起来了,但是好久用不了多久又疯了又疯了。

而且好歹也知道你登我登不说封不封的事情,你打开个巴掌,我就立马再开个巴掌,结果那个环境就掉了,你做的你也蛮烦不,你也做的也很烦躁的啊,所以有条件的还是自己买,你用我的号的,你又只能晚上用一下。

那个白天转的时候,那里面的十多个人都在用,咋用啊,环境刚开就关了,CCTF网址多少,上节课讲课的时候用过啊,直接CCTF修啊,搜就搜不出来,网上那么多CCTF平台,你如果简单学习一下的话。

你可以网上搞个免费的啊,免费的CDF平台还是蛮多的。

上面免费题目也有CINEA修,他那个收费呢主要是他那些题目呢比较多。

然后呢比较循序渐进整理的比较好一些。

省去你那个自己找的时间,也不是说它上面题目优秀。

而是他整理的比较偏向于刚入门学这块的。

好看大家还没有问题啊。

什么问题都可以说的啊,我们给大家解答一下,反正现在有时间。

下节课就上其他漏洞了,你看这个巴布树的上面呢有很多靶场是吧,但是一些漏洞呢,油价考的也不是说很垃圾的一些漏洞,那上面还有一些有一些进阶的一些漏洞的情况,夸张的呀,还有什么JWT的呀是吧。

身份验证的呀都有,不过还是比较偏向于基础。

开发不需要独立开发项目,你如果能独立开发项目了,那你那个水平就已经很高了,不需要达到那个程度,那个程度的一般就可以了啊,半吊子就可以,当然你如果说自己呢,能够能够有那个时间和精力。

能学到个那种开发的专业程度,那是更好,aw环境,Python pp啥都没,应该咋上WF,网上有这种东西的,你们那不管说是技术差,你要学会找资源的呀,很多东西你网上搜一下就有不是这种INCO的啊。

网上有那种别人写好的一些直接脚本套用的,你搞一个那个全局文件配置下也行,所以说还是基础太差了,你如果说懂开发的话,你即使说你自己写了个Buff,是用这个脚本写的,你在那个手头页那个手部文件呢。

像什么数据库配置文件,你把它写到输入配置文件里面去,那很多有数据交点的都会加载的文件里面,外服不就能够实现吗,还有现在就是在那个中间件里面去配置一个,那个类似和那个java的监听器一样。

就是你在出发的时候呢,先经过那个过滤再去进入后面逻辑,这完全和一些开发相关啊,挖不到钟退钱啊,你要做这个事情啊,前昨天今天还有个人在群里发消息,说之前一直挖不到东是吧,学了我的课程,然后挖到龙是吧。

这别人感谢话不是开玩笑的,你应该多向别人学习一下啊,唉这几天有人经常你说这个事情加课程,这种事情呢就能经常有个鸟毛,就是天天在网上上看到了这个什么面试题呀,不灰的,再也是网上看了一些那种嗯。

其他方向的技术的一些安全问题呢,他就过来找我,发给我看,什么时候问我什么时候教他,我真是拦都拦不住,妈的啥都要教,有些我都不回,我咋教你养,现在什么黑客湾的漏洞实战,没事想七想八想一大堆呀。

那国内的SRC都都玩不明白,现在还搞国外去了,那隔壁的搞个国内的SRC10几次直播,五千七千的收你不咋想的,以前说实话,以前什么加课程也好啊什么的,我都很烦,我在想你这娘的,你这话2000多,2000。

240给你上了,你还要我加64再上,我64,你要干死我呀啊,你硬死,你妹的往死里干,对不对,现在我换了个情况,想的我不能那样想了,想的我就很生气啊,我现在换了个想法,我想他们可能就是独处,我进步对不对。

我把这个科呢搞得更好更漂亮诶,就有更多的韭菜,我现在是这样想,我才同意的,不然的话我要坚持下去死,还有啊除以那你看啊每个人都有每个人的需求,这个还说瓦懂的注意事项,有时候你可能会认为很简单。

很清楚的一些事情对吧,但是有些人呢他就会以这种疑问,就是说啊他挖懂注意事项,你说这东西那注意什么东西呢是吧,那可以口说也把他口说出来,那无非就是说遵守规则是吧,不要这个尝试高位操作,不要动别人的数据。

不要收权啊,不不不要这种搞那种像没有授权,那你乱搞的,你也不要把这个漏洞细节呢给别人看,只需要保密是吧,这都是注意细节,但这个东西你自己说实话你都可以想到的啊,再加个C嗯。

啊还大家看还有没有问题啊,有问题就问啊,没问题,我我把录下先关了吧。

P52:第52天:XSS-Demo源码&小皮面板安装包等 - 逆风微笑的代码狗 - BV1Mx4y1q7Ny

好我们现在呢给大家讲一下今天的内容啊,第52天了。

加上新的漏洞,那个夸张的啊,这宽容度呢我们具体呢也要上四次直播呀,今天上的是这个基础类型的啊,非持续性的反射性夸张和持续性的存储夸张,然后呢,再就是一个DMO类型的BIOS的一个夸张类型。

那还有其他拓展类型,像这个JQUERYMXSSU叉,XSPDF叉ss s flash叉,SS和商传XSS等的一些拓展类的,一些夸张的一些利用了我们刀手呢,在下节课呢就讲到,那除此之外的话。

这个夸张的他的一些核心利用啊,比较基础的,什么盲打呀,什么cooking夸读取呀,coking的刀举呀,还有些这个联合那个什么钓鱼的一块的呀是吧,还有一些这个菜S啊,什么去窃取平局啊。

那像这些那都是属于他的攻击,利用公积利用呢会涉及到一些工具项目,到时候呢我们这个公积利用这个东西啊,是单独的一节课呢去给他讲,然后在这个安全防护这一块,提出这个解决方案和防护啊。

他的一些这个修复操作和一些绕过的东西呢,到时候再换一节课去讲,就说四节课呢讲的是什么啊,四节课呢就是先讲它的基础类型,就是常见内的,然后呢再讲下拓展内的,再来说一下他的利用和项目工具。

再来说一下它安全和绕过的一些情况,这是我们时间差SS的课程的安排啊,那今天呢就讲最基础的啊,首先呢搞清楚什么是夸张,在夸赞漏洞呢是最容易产生的,也是最容易忽略的一个漏洞,它也是一个最需要配合。

也称之为最鸡肋的漏洞,因为这个漏洞啊也不算很最鸡肋,反正比较鸡肋,他积累的这个情况呢,是因为这个漏洞啊,大部分呢都不是主动漏洞,什么叫主动漏洞呢,就像这个其他漏洞一样,如果有这个漏洞呢。

我们就可以构造一些东西呢,直接通过这个漏洞呢得到什么东西,但这个夸赞它不太一样啊,这夸赞漏洞呢一般呢都是需要这个受害者呢,就是这个受害者呢需要捉到或者说去触发到,才能进行这个攻击的利用。

也说我把这个攻击呢,我把他植入攻击了,但是呢他需要有对方就说目标的一个这个触发,才会把这个漏洞呢进行完善,所以呢他有一些这个积累,就是积累在这里,然后还有一个积累,就是出发的时候呢,还有一些条件要满足。

因为有些这个夸张代码,那它主要就是这个我们说的前端的一个漏洞,就是说一般是执行这个JS,就是我们的JAVASCRIPT的代码啊,他执行JAVASCRIPT代码那部分浏览器的话。

有些这个安全策略会组织JS代码的执行,再根据你当前浏览器的版本和它的设置呢有关,有些部分浏览器它的默认的安全策略呢比较高,在一些浏览器访问一些网站的时候,那它会有一些询问,询问你是否要执行这个JS代码。

如果说对方呢点击的是组织的话,那么很可能即使触发了,也并不丁会能执行出JS代码,也不应不一定呢会成功,所以他的有很多限制条件,导致这个漏洞在实战中呢,它会出现一定的这个积累性,就这个原因啊。

我们等下呢在后面课程讲的时候呢,他就会有些这个相关的东西啊,但这个漏洞呢他有个优点,这个优点就是说很经常会忽略这个漏洞,或者说即使这个项目中的有这种XSS漏洞呢,一般人呢都不会把它进行一个很大的事情呢。

去看啊,去看待也不会啊,可以的去修复这个漏洞,很多这个操作的时候呢,就是这个漏洞呢即使有,但是呢他也不会去修复,咱就是因为说他不是个主动漏洞,他需要有一定的这个配合之后。

他才能把这个漏洞能完整的利用出来,不过他在某些情况下面的话还是有点作用的啊,这是主要是在公信利用的时候呢,他的思路方面的事情好,现在呢我们就不讲这些题外话了啊,我们就现在真实的去了结一下。

这个夸张漏洞的原理和他的一些情况啊,那夸张漏洞原理呢,简单一句话就是接收输入数据,再把这个数据呢进行输出,在输出的时候呢,这个输数据呢当我们去给这个数据呢,给到的是一个前端的JS代码的时候。

那么由于这个JS代码呢,在前端进行显示的时候呢,就会被执行,比如说你让他输入123,那么他输出123,那么你让他输出一个JS的代码,那么它就会输出这个JS代码,当在这里输出这个JS代码的时候呢。

浏览器这个前端呢就会把这个代码呢,当做这个代码去解析执行,那么这个JS代码是干嘛的,那么就执行什么东西,如果这个借代码是做任何事情的,那就是做任何事情,所以说他的攻击利用呢就是JS代码的作用。

JS代码的作用是什么,就能做什么样的攻击,好,我们这里呢用例子呢去给大家去简单看一下啊。

这个漏洞呢也是产生在各个语言中,它也不是说在pp单独使用。

在任何的这个只要是有这个前端语言的,那么都会有啊,你可以看一下啊,这个很基本的代码,这个代码呢就是一个这个用pp写的好的,用java写的,用其他地方写的都一样啊,也没什么大大重要。

因为它的核心应用代码呢主要是JS代码,和你这个后端语言代码了没什么太大关系,我们是用后端代码呢来形成这个漏洞而已啊,但他攻击利用呢都是前端的一些代码,你看啊他这里呢去写真正代码啊。

你看啊呃这个代码的作用呢也非常简单啊,接收一个参数值,然后再把这个变量呢给它输出出来啊,我们这里呢可以进行对这个网站进行访问。

看一下啊,嗯比如说我们给他一个这个值啊,在这开个大按钮啊,好你看啊他输出的就是这个一,大家可以看到了。

他输出的就是个一,对不对,在代码里面啊,输出就是个一。

然后打赢一个这个换行的东西啊,他输出就是一对吧,你这里写什么东西呢,他就输出什么东西嘛,啊就说这里呢是你一个值好,然后呢这里就输出个值,那么大家试想一下,当这里让我把123呢改成这个什么一个。

这个类似的什么JS代码的时候,对不对,就改成这个JS代码,而art可能是这个弹窗的一个操作,这里呢会更加明显,这个可以写写了JS语干这个script达tick1script,然后呢进行执行。

那么大家可以看到这里呢就弹窗了,你可以看这个代码页面中呢,我们就可以看一下这个源代码中,那你看是吧。

就显示这个了,我们提交信息加这个hr,hr是这个代码这里面连接的一个东西啊。

在这给它去掉保存一下,在你看,还有弹窗仪是吧,然后在里面显示个代码,就是在页面中去显示这个代码的时候呢,当这个代码是个JS代码,所以呢他就把这个东西呢当做JS去执行,那么那就形成这个东西。

那么大家思想一下,如果说我把后面这个代码那改成一个什么,改成一个其他的建设代码啊,改成一个呢类似于script a保护SRC,加上一个什么啊,app小了八点com,对不对,改成这个地址。

然后呢再然后啊变成这个语句啊,这是个介代码,就是加载这个小八点com这个地址啊,这个时候啊我们来看一下老师改完之后呢,我去访问,你看,哦他这个代码中呢就有这个显示对吧,你看他就显示这个代码。

然后我这里呢如果把这个呃JS代码呢,改成一个这个嵌套式的,什么嵌套式的一个页面。

啥意思呢,就是在这里呢我们。

天哪这个签到四啊,嗯IF这个鬼东西,这代码我都不会写了哈,呃给看一下这个文章吧,常见标签啊,看一下,啊这里没有嵌套啊,哎,你看大家看一下啊,这里有个框框,你看这框框就显示一个小圆点,看我们看到没。

大家看到没来,也就是说你在访问这个本地网站的时候呢,他在不知情的情况下面呢,就访问了这个什么定义的这个网站,那在访问百度点行,只是说白天看我都把拦截了是吧,我晓得吧,没有拦截它。

啊他就访问这个下巴点com下,对不对,然后这里呢你可以设置这个框框的大小,也可以把它隐藏掉,那么其实就算你访问这个地址呢,在不经意之间呢就访问了小里八点com,你看数据包里面呢访问了小八点com。

对不对,那么大家思想一想,其实呢就是说我们可以用这个ATM和加这个JS的,一些代码呢在这里去执行嗯,可以相当于说我还做一个很简单的事情,就说我把这个框框呢给它变大,搞成个透明化的东西。

一打开嵌套一个网站,而这个网站呢我保证和这个网站一模一样,保证假设和这个网站的界面一模一样,那不就等同于是一个类似的钓鱼的一个东西吗,就把这个地址发给你是吧,看上去呢是这个网站。

但实际上呢你在这个页面中去操作的时候,是加载了这个网站,那在这个网站操作,那这个网站假如说是我自己的网站,我在上面做任何事情,我记录你的这个登录账号密码等等一些情况,不就是类似的一些钓鱼的吗。

是这个意思吧,那像这种情况呢,就是我们说的发展的一个最基本介绍啊,这种情况就是发展的一个最基本介绍,然后这个跨在里面呢有几个分类,我刚才说了啊,我们今天讲的是基础类型,你像后面还有这些类型。

就是一些拓展类型,这是XSS的高端玩法,这是最基础玩法,玩法里面呢有三种,一种叫反射型,一种叫储存执行,一个叫多模型,那这个反射性是今天这里的叫这个叫反射性,那这个反射型是什么概念呢,很简单的道理啊。

就说本身网站的功能是接受这个正常的字符呢,并把正常字符呢进行输出,而我们这个时候呢发现这个地方能控制它的,输出的时候呢,再到他后面的去写这个后面的语句,然后呢它形成了一个加载一个页面对吧。

然后呢这个页面网址呢发给别人点,打开之后呢,就会和我们这个界面是一模一样的效果,把这种类型的攻击我们就称之为叫反射性,发展,叫非持续性,什么叫非持续性,就是说,这个攻击是你这个攻击者自己构造出来的。

他不是咱们本自身就有的,你不构造它就是正常的,你构造了它才有漏洞,那么对方会不会访问到这个地址呢,你不发给对方,对方怎么访问这个地址呢,他要访问他了不起,就访问这里,访问个正常的这种情况是吧。

访问这种情况的东西,或者说压根就访问这个地址,压根就不会触发后面的东西,就说他正常去浏览网站的话,他不会触发到你那个写这种代码的,一个页面出来,这是你自己构造出来的,你想构造什么效果。

那在后面改改这个代码,这种的我们称之为叫反射型,也叫非持续性,意思就很明显,就这类攻击,那是你构造出来的,它就是当时攻击的时候,当时有效,别人不访问就没有效果,他不是别人能访问出来的。

是你要发给对方去钓鱼,或者说让对方去触发,很简单的道理,就像这里呢我写这么个代码是吧,我模拟一个钓鱼,我就以以一个钓鱼的人的身份去这个发给你,我说哎呀这个上面呢这个网址怎么回事是吧,然后呢把网址发给你。

然后呢你去把它打开访问诶,然后呢你在上面去操作的时候,那就被我这个搞到手了是吧,就这么个情况,那如果说我不发给你的话,你是不可能触发到这个地址的,因为这个地址在网站上面是没有的,是我勾勒出的,能理解吧。

这种就叫非持续性,叫反射性,还有一种类型呢就是一般很好理解的一种类型,那我们再看一下,就是我们前期讲pp开发的时候,讲这个java开发的时候,写到过的这种类似留言板功能是吧,通过这里呢写个留言啊。

写个内容,点击留言哎,他就会记录留言的数据和留言的内容,包括一些信息是吧,那么这个留言呢它是往后推移的,就说你留了言之后,这个留言没有被删除,那么它就会一直在这里保存,因为这个留言呢它是写到数据库里面。

你不管他写到数据库里面,还是学到其他地方,只要是这个数据,它不会删除,那么你想象一下,我现在假如说这个留言板有夸张漏洞的话,我植入一个跨境代码到这个留言板上面去,那么也就是说下一个访问者就会被触发。

比如说像这里呢,我们就写一个这个发展的一个简单,测试的一个弹窗,你可能说为什么要写一个弹窗,弹窗呢就是效果更明显,但是它起不到其他作用,因为攻击的话就要修改这个语句,而我们现在呢做演示。

就是说弹窗就表示说能够执行这个语句,那么如果在攻击中呢,你就只需要把这个语句的更改成,你想要的操作类的语句即可,我们在这里写上它之后啊,点击留言是吧,当留言成功之后。

你会发现每当有人去访问这个地址的时候,就会弹窗,那就说只要是下一个人就会执行,我刚才植入到的这个夸张语句,就会执行这个JS语句,因为这个语句已经植入进去了,那么下一个访问者呢就会遭殃。

那像这种类似的在网站的常见功能中哪些有啊,评论区留言板,只要是有这个数据存储的地方,就是有那这类的夸赞攻击,我们称之为叫存储性攻击,就是持续性攻击,很好理解吧,这攻击会一直持续下去。

而且只要对方浏览到这个页面就会被触发,而不需要像我刚才那样子,刚才那个画展一样,需要自己构造好,然后呢让对方去触发,而且让对方触发,对方访问网站是不会触发的,你必须要发给他,那是你构造的地址。

不是对方能够直接访问到的,而这个就不一样,就是我直接把工具语插入到网站的数据库,或者说它的存储的地方去了,那么只要有人访问到了这个指定地方,就会触发这个JS代码,也是我们所俗称的跨人代码。

那么这里呢攻击就会一直持续下去,直到这个数据被删除才会停止,那么大家可以想象一下,这两类的一个夸张的类型,它的危害程度啊,危害程度可想而知,那肯定就是存储性夸张的,要更加的这个危险的,而一般在网上。

不管是你挖漏洞的,还是你在公司里面提交漏洞信息的时候,一般像这种反射性发展,很多地方他是不收的,不收的原因就是因为这个漏洞在利用起来,他是很鸡肋的,就像我刚才说的。

你要自己构造好那个触发代码的URL地址,然后发给对方,对方点和不点是一码事,颠呢也不一定会成功,因为我刚刚说了,有些浏览器呢它会阻止,或者说有些这个啊各种各样的一些情况是吧,都会有一些异常不到的情况。

所以呢你罚给对方怎么罚,怎么发给对方,对方会不会点,能不能成功,他有几方面的因素去决定,要都满足才行,所以像我刚才说那个反射性的夸赞呢,虽然网上都很多,但是很多在SRC平台。

或者说在这种公式的这种提交漏洞,这种测评的这种报告中呢,啊,有很多地方呢是没办法才把写上去,很大情况下面大家都会忽略这个漏洞,而这个纯图形夸张呢就不一样了,因为它是一旦植入进去之后。

有人访问了就会触发的,所以这类的攻击呢还是有部分的这些,而且啊SRC啊,或者说一些这种东西呢,他会收的,只要是这个有像一些社交平台的,还有像这种交互私的地方,人数比较多的地方呢,他就会收这个漏洞。

因为这个漏洞呢对于他这个业务呢,观点比较影响,我比如说打个比方例子啊,你像这个存储性夸赞,像什么QQ空间,那还有像这种论坛啊,留言就是那种有社交群体的这个地方对吧,QQ空间里发个日志。

日志里面呢还能够植入夸张,那么别人看了这个日子就就中招,你说这个危害该有多大呢,对因为他是一个成千上万的一个群体在上面搞,那像战斗力的话攻击,那那比那个怎么取一个单位攻击还要高是吧,好说了这么多。

这是这两个类型的一个夸张,我们在讲第三个类型的时候呢,我就先问一下大家,就截止目前你对这个讲课的这个夸张的,这个漏洞的两个一讲了之后,你觉得这个漏洞有没有用处啊,觉得他是不是很鸡肋啊啊啊。

在实战中他是怎么用的呀,会不会有这样疑惑是吧,然后我给他简打一个很简单的例子啊,一般这个夸赞在实战中是什么一个用法,我给大家解释一下啊,我就拿个很简单的例子,这夸张呢,它的利用场景是会和你目标呢有一些。

绝对关系的,你的目标有交互式的地方越多,那么这个发展利用的机会就越大,如果这个目标没有什么交互式的东西,那么这个发展呢发现了和没发现都是一样的,没什么鸟用,什么叫交互式,就是说你和米是攻击者。

对方呢啊是那个网络啊,就是啊这个站长或者说是个管理员,你能和他有交互的地方越多,那个夸张就价值越高,或者说你用的机会就会越大,那我举个很简单的例子,你像这个一个app。

你不要说这个话只产生在这个网站里面啊,在app里面也有app里面是吧,比如说这个啊,什么这个一些app里面,不经常有这个什么提交建议啊,或者说联系这个客服啊,啊这个联系站长啊。

就不管是你这个有什么问题啊,或者说投诉建议啊等等一些地方是吧,这个时候呢比如说写个什么,写个什么建议呀,写个什么这个东西呀是吧,发给他呀,怎么样的,还有什么工单交互的一些地方。

你在写的时候把这个JS语呢写到里面,如果说对方呢他经常看这个东西诶,他又打开这里存在夸赞,在他那边就执行了JS代码,而这个JS代码具体干嘛,现在我们不用多说,我们就拿个比较最简单例子。

攻击利用的时候呢啊他是个coin刀,取coin刀群呢就是盗取对方的一个管理员凭据,那这个时候呢一打开诶,把他管的户型盗取到了,那么你就知道,因为他要看的话,肯定是有个后台系统在看。

打开后台系统看你这个投诉建议和留言的时候,不就中招了吗,你就能拿到这个管理员的cookie,用他的cookie登录这个后台呀,不就达到了吗,啊这是第一种,还有一种像我们说的网上呢有些搞这种推广啊。

销售的一些这种啊订单啊,这种东西就像以前嗯是吧。

我们找一下呢,比如说我们呢有时候呢这个经常看到。

就拿这个托法来讲是吧,你看到啊,它有下的都是有这种呢这种互动的地方。

是不是啊,还有人那就直接卖腰啊。

你知道吧,那你看他是吧,你看这里输入这个什么鬼姓名的电话啊,就这种类似推广,你把这个姓名电话,这里呢写个那个JS代码里面去把他一提交诶,对方就知道了,哎呀有人这个有这个脱发问题呀是吧,那小李一个兔子。

他他来提交了啊,我要把他这个韭菜把他割到,他就在他的后台呢是吧,就去看这个留言啊,你叫什么名字,电话号码,我就这个销售来了啊,电话给你拨不下来了,卡的时候呢不小心是吧,就执行JS码这个建站嘛。

那就把对方的cookie呢发给你的歌去,是不是这个道理啊,那像这类工具都是属属于什么,属于我们的存储类的扩展,就是你的代码呢,写入到他的系统的某个地方去存储了,对方呢在去看的时候呢就触发了。

然后他们一般都不是反射型,反射型的话,你还要去联系别人,你还不知道站长是谁,你怎么知道呢,所以说呢反射性它庸俗不搭,就这个意思,那纯属性不一样,你发过去了,只要盯着对方去上钩就完了。

我刚才为什么说要有交互式呢,就是说对方如果说你发过去了,你看都看鸟都不鸟,那有什么作用呢,对不对,你发过去一年他他都不看,两年不看,3年不看都不知道有这个东西,那发个毛啊,发所以你要知道啊。

这个夸张的利用的是和你这个目标的,他的业务功能,和这个业务的需求有关的,他喜欢看,他爱看是吧,你发过去他才有用,他压根就不管这个东西,你罚个毛啊,罚有这个漏洞和没这个漏洞是两码事情,明白吧。

都给讲一下啊,所以一般像这种夸赞呢,他的攻击目标是要建立,对方和你的这个交互性呢是比较强的,就你知道他很大几率会看,那你搞这个夸张的才有用,而这个夸张那就像我刚才说的,你这个把夸你去插进去。

你也不知道对方有没有这个夸赞这种行为,那就称之为叫盲打,就是你不知道这个有没有夸张漏洞,反正你妹的我就发过去是吧,要么成功,要么失败盯着你啊,没办法就行,就这样玩啊。

好这个是我刚才说的这个存储心啊,就是说这类的扩展呢,一般是把你的这个工具代码的,存储到他的数据库,或者存储到某个地方,反之就是这个数据呢是存储的,然后呢这个数据呢对方在看的时候,那就中招了。

只要对方不删这个数据,那么会一直持续下去,这种呢就叫存储,也叫存储,存储和持续性扩张好,还有一种呢就叫DOO型框的,什么叫demo型啊,前期在讲pp开发的时候呢,我们单独还商过。

教过大家呢使用这个DOMO操作啊,就是那个JS那个课程里面啊,大家不知道还有没有印象,那当时我还写了个demo操作是吧,就是利用这个啊JS代码呢,实现一些这种啊这个DOMO型的一些操作,对不对。

当时还讲过啊啊,然后这个灯模型夸张是如何产生的,我们这边写了个简单例子啊,这个例子就是一个接收浏览器上面的地址,信息呢来实现的一个类似的挑转好,我们来打开看一下啊啊这是个多么点XSS,我们打开看一下。

那这是一个dmxr size啊,你看它有什么作用啊,就比如说我在这里呢,我写上个三W500com,我执行,你知道吗,什么鬼啊,哈是吧,那我仿这个网站来,你看我发这个网站啊,他要刷新一下呢。

它自动跳转到百度,看不了啥情况。

这个是怎么实现的呢,这是个纯接三网,没有啊,这是个ATM加JS代码,没有做任何事情,很简单嘛,他的的他声明一个变量叫哈奇locking啊,lock in哈奇啊,接收这个浏览器信息URL地址。

然后呢判断如果说这里有值啊,他就把这个值呢取出它的移,就是索引下标为移的就是那个井和后面的,然后再用这个log型HREF呢。

去跳转到这个指定的URL,所以我在这里呢写上这个ATP,像abiding com,它就会自动的跳转百度点com啊,你写任何地址呢,就跳转任何地址,对不对,比如说优酷是吧,还跳优酷对不对。

那就一四好,第二好。

那这是个什么情况呢,这是一个简单的功能是吧,一个简单的功能没有做任何事情。

但是在功能里面大家可以看到啊,这是一个用JS操作的,他的这个取的值呢是取的是浏览器上面的值,或者说是这个表单的值,多模型操作对吧。

这里呢我们有图片啊,刚才的反射型呢,这个是空间流程,然后下面这个图呢是一个存储性,就是把数据呢写到这个东西之后啊,当户用户呢去访问的时候呢,触发啊,一个是存储运算,那DOO型呢。

其实就是针对这个汪子或者表单里面的标签,里面的值呢来做这个数据存储啊。

数据操作的DOM型,它和这个纯属性和这个反射性,有什么最大的差异,它的差异就是它一般取的数据,是我们这个什么浏览器上面的。

或者说这个里面的文本的,然后呢通过这个JS代码呢去把它取出来取。

利用这种类型我们称之为叫德模型,啥意思啊,就是说前面那两个存储型呀,和那个那个那个反射型,都是取你这个用户提交的数据,而这个DOO型呢他虽然说也是取这个数据。

但是它一般这个数据呢就是比如说啊,很简单的道理,就是我的网页中有个叫DOMXSS,点test这个内容对吧,他这里呢如果说访问这个网址以后,他要把这个三个数据呢把它发生更改。

或者说显示到某另外一个地方或显示哪个地方,他就会利用JS代码去取这里面的某个值,某个东西,然后显示到另外地方或者怎么样,那这种操作就是demo操作,就是对于这个网页的这个什么内容啊,标题啊。

这个这个数据啊或者ATM代码的一些东西啊,或者网页上面的这个UR的信息啊等等啊,去做这些数据的一些收集和显示,那这种呢就是多模型操作,然后夸的那就是产生在这里就很简单。

我们有个功能就是呢看一下你网址上面的信息,然后你网址信息一旦发生更改啊,他就接受这里面的某个东西,让它跳转过去。

这就是个简单的一个功能,但这个呢就属于DOM型,XSS能理解吧,就是说前面那两个类型呢是从他的这个啊,他的一个差异,就是有没有这个顺数据存储的差异呢来去分类,而DOO型呢它是针对于这个它的功能上面。

就是他的这个用途上面那去进行的分类,一般你在网上去学这个XSS的话啊,介绍的就是这三种类型,多模型,反射型,还有存储性三类的一个情况,这个三类呢给他讲,第一个呢是告诉大家以后呢,你去提交漏洞的时候。

或者说去写这个报告的时候,发现这类漏洞呢要知道怎么去归类它啊,其实你去理解它这个三等类型的利用呢,它利用起来都是差不多的,无非就是说怎么去区分这个类别,在书写报告和漏洞判刑的时候呢,有什么概念啊。

利用起来是差不多的,都啊哦,哦刚才有人说还不懂,这有啥不懂的呢。

蛮简单的事情啊。

德模型这个夸张是非常好理解的啊,就是呢它是针对于我们这个网页里面的,这个整个demo输的操作,取的是标签里面的或者是表单里面的一些值,用这个值呢来做数据的操作,然后我们举的例子是让大家更明确。

更能看到效果,例子就是取这个月L上面的值呢,然后呢它进行功能的操作,知道吧嗯,好你们刚才要问什么怎么扯怎么扯,如果说我讲课讲了这么多,你听不懂,那没有什么意义啊是吧。

我们呢也给大家准备了这个三个实例是吧,三个这个类型的实例呢都给他找到了,你通过这个案例里面呢去想象一下,他这个是怎么找到啊,怎么分析我们上漏洞呢,现在不要去考虑怎么去找这个漏洞。

这不是你现在要考虑的事情,你先把这个漏洞的形成原理,和他的利用呢搞清楚,再来思考这个怎么找,因为找呢我们都是从两个方向去讲的,一个呢就是从黑盒的角度去讲,还有一个呢就是从他的代码的方面去讲。

那代码方面的那不用多说,那就是看代码呢去找,那是代码升级的黑盒呢,黑盒的话也很有分很多种情况,一种手工找,用工具找工具找,那也不说了,就是工具少就完了啊,手工找,那就是主要就是考核你对这个漏洞理解。

知道怎么找会更加的这个效率高是吧,好我然后呢我给大家说一下,这个还有一个支点啊,先把这个支点讲了之后呢。

我们就用这个实力去给他讲,因为这个要讲一讲啊,那比如说刚才的反射性,这里啊,他不是输出这个co的嘛,对不对,你看啊,我们要执行JS语句的时候,是怎么执行它的。

那刚才呢我们去这样去执行这个J代码,我这个键代码呢写弹窗是为了大家看的效果,而不是说他的攻击就是这么写啊,攻击不是这样写的,因为你弹个窗没什么用啊,工具呢是更改这个代码来形成你要执行的东西。

因为工具是多种多样的,你是要获取到的cookie呢,还是要进行钓鱼呢,还是要做什么事情,这是根据你的需要呢去写这个代码,就是它的攻击,利用代码,我们这里写弹窗,只是为了让你看到这个J代码被执行。

所以呢就是代表有夸赞,而不是说我后期利用也是写这个东西啊,后期利用不是写这个东西啊,那我执行它是弹窗啊,好那这个弹窗的原理很简单,因为呢代码中呢是直接把它进行输出了,如果说你像现在我换一种模式。

我输出这个东西,那你可能说为什么要输出东西啊,很简单道理,假设说这里我模拟模拟成一个什么,模拟成这一个接收图片对吧,接着图片去显示图片的一个这个功能,对不对,假如说X后面再加上是一个图片。

然后呢我把图片上那个文件呢改成一个键代码,然后这里呢还用这个image的SRC,是不是加载这个图片去显示。

对不对,你比如说像现在我们就找一张图片,是不是随便找张图片啊。

好这里取这组片对吧,放这来放这个目录,把他名字改一下,改成叫一点偏激。

好这是那个一点偏激,对不对好。

我这里呢最后给他传入这个一点PNG,说我先搞个正常的给你看一下,来看到没,这也是那个功能嘛,那传入一点PNG之后,哎这里就显示那个图片,是不是啊,对不对,那如果说我把一点TT1改。

我改成一个什么JS语句,script artic是一个弹窗的一个语句来测试一下啊,把它改成这个东西要写上去啊,对不对,哎我把它勾上去,哎这里呢你看哎咋不弹窗了啊,写错了吧,啊没写错啊,打不弹窗,为什么。

因为你看这个显示代码呀,他的那个显示代码这里,那你可以看下源码里面那SRCN呢,加上这个地址,那很明显这个代码写的是有问题的,它本身有问题,为什么是本身就有问题啊。

那该怎么办呢。

是不是要逼合这个标签呐,怎么装这个标签里面也能执行JS语句啊,所以呢我给他看了个文章嘛,只要根据当前你输入的这个代码的地方。

看一下他在页面中的那个在拉哈里哈,然后那里选择性闭合。

你看这里有常用标签,你看呢比如说EMAGE标签可以,那使用这种方式呢加上X,然后on mood就是地址,图片呢一旦出错就触发这个on errol事件,就是错误事件来进行的,ARTIK移的一个弹窗。

对不对,你可能就写成这种模式,来把它写这个东西来复制一下,放到这里来,让他错误页面,然后呢去执行,然后勾一下执行哎弹窗,你看为什么你在看源代码是把闭合了呀,你要根据你那个输输的数据。

到页面中的哪个地方啊,然后进行这个测试,那这个就是关于他的那个利用和发现立方,你可能说这个又又讲了什么是发现的呀。

那我很简单的例子啊,你看一下啊,我把我那个小礼包打开给看,就说按照我们的珍藏手工去分析,这个差生当中去讲这个概念啊,在里面打都打不开呦。

唉行吧,好,你看现在啊,比如说我输入123,我在里面搜索这个123,那你他这里呢就会有这个123的数据是吧,那么如果说你输入个script呢。

那是不是就会显示script的数据啊,然后你观察一下呢,把选中呢优键检查,你观察这个123在哪里,你看他是在这个em这里,对不对,你就试想一下,能不能把这个123改成个script语,同时呢让那里执行。

对不对,就B和这个前面的em和后面的em对不对,或者这里是存储到这里,如果说他写到这个em里面呢是吧,又该怎么办是吧,如果说你能闭合,而且上面没有过滤的话,那就恭喜你就可以找到了,那这个是地址对不对。

然后也说你更改这个地址,那就更改,这也啊更改这个也暂时是吧,它就会显示这个类似的数据在这个地方显示好。

就是这个意思啊,这是手工方面的啊,这个呢不是我们现在操心的问题啊。

就是说有些人问嘛,就给大家说一下啊,然后在利用的时候呢,还要考虑这个闭合的问题啊,就是要看因为它的漏洞,那是产生在输入和输出的地方,输入呢是你提交的JS代码,就是那个跨站代码。

然后输出的地方就是它显示那个地方,为什么它不能执行这个JS代码,就是因为可能你JS代码的输出的时候呢,写到了标签里面,或者说他把某些东西给它过滤掉了,导致他不能执行,所以你只要用那个JS代码呢写的时候。

尝试性的把它闭合,并且让它执行出来啊,过滤呢那就是另外一回事啊,就是说要换一种写法呀,或者说用其他东西了,当然这里呢我们不是说所有东西都能,都能这个绕过啊,是要具体看目标的一个过滤情况。

和它显示的地方去去尝试性去闭合的啊,这个科呢是在后面要讲啊,现在呢我们暂时呢先不管它,现在呢先了解它的分类啊,然后呢和这个漏洞的一个情况啊。

好,我们现在呢就给大家看一下,这个比较额三个案例啊。

这三个案例呢就是反射性的案例和存储型案例,和这个DMO型案例,通过这三个案例,你再来去把这个三个分类呢搞清楚,和他的一个简单的一个实战中的应用的思路啊,你就知道了,我们先看一下一个老演员的一个案例啊。

我这里呢没有用靶场给他演演演练啊,就是因为靶场面没有什么实际说服力,我们都是在网上找的一个三个啊,当然这个都是,那这个是一个很简单的,他那个比较鸡肋。

但是呢对于我们研究发展呢非常有作用,这个呢是一个网址,这个网址呢是一个接收用户的一个信息的,一个网址,就大家都知道网上那经常有一些接口啊,就你访问它呢,它会让判例呢,比如说我IP地址它要判断出来了。

我连外星信息啊等这种信息是吧,他都能判出来的,对不对,你看他这里呢就结束了是吗,判断出了我那个浏览器的欣喜,那么很简单就是一个数据包的问题嘛,哎你这里的,它这个这个过程就符合一个输入和输出啊。

你只要搞清楚夸张这个漏洞的一个原理,就是输入和输出,输出是把你用户的信息输出到页面中,输入就是你自己访问,或者说你修改某东西输入的,你只要了解每一个漏洞的核心产生的根本。

你再去想怎么去找这个漏洞就非常简单了,一直会问说怎么去找这个漏洞,就是因为你不了解它的根本,这个跨境漏洞的根本,就不是输入和输出的问题吗,你可能说这哪里有输出啊,这不就访问网站在哪里有输出啊。

你看输出是什么,他这里有显示你浏览器的信息,有显示你的IP,这个浏览信息不是你放网站自带的吗,如果你尝试性把你浏览器改成一个夸赞语句,让他在这里输出,这不就符合一个夸赞漏洞产生的根本吗,是不是这个道理。

大家就会这样去想这个事情,那你觉得宽容该怎么去查找他呢,就是找你访问这个网站,不管是你有没有带数据,因为你访问它本身就带数据,只这个数据呢不是在这个浏览器上面,也不是在你提交信息上面,是在你本身的包里。

所以我这里呢也给大家看到了啊,他这里康数据交互的地方,get上面带数据,post带数据或者文件,这个数据包的头里面也带了是吧,像这种地方都是他测这个漏洞的地方,那你看这里啊,我们访问它。

然后你跟人说这怎么测呀,来给大家看一下啊,我正在用这个自带浏览器给他看看,然后我去抓个包,然后房子网站啊,好的数据包是吧,你看这里是不是访问这个网站的时候,自带一个数据包,这里有UI啊,你看着啊。

我就把这个信息的给写上去是吧,这个跨成语代码写上去,然后呢,我前面最好把它进行一个对吧,分割一下,避免说是我没有写,那是我后面再写上个DDD好吧,大家看着啊,来看着啊,把它放出去啊。

你看啊,余位信息我把它修改,我要一放出去,好开网的。

你看弹窗,看到没了,网子弹窗再看信息,那是接收到我这个信息了,这个就是个典型的反射性夸张指数,它非常鸡肋,鸡肋是你要修改这个UA信息差才能触发你,实战中你怎么让对方去触发这个UA信息,肯定不现实啊。

对不对,我只是说这是个典型的反射性发展算的,这是看不到的,这个什么数据的接收,就是他这个书炉呢在浏览器这个网上面看不到,但实际上呢他有接受有输出,所以早发展漏洞这种反射性这种啊,这种漏洞的话。

最核心的就是要观察页面输入的数据,是不是你能控制的,能理解了吧,就说他页面中不输这些数据吗,这数据你能不能控制它呀,该怎么控制它呀,然后你尝试性把那个控制的数据,改成一个JS代码放出去。

看他解不解析值不执行,如果他不解析不执行,你就要分析是没有闭合呢,还是说他有过滤,那你看就很简单的,比如说现在假如他不能执行是吧,是什么原因,我也找到这里,我就可以把这里的选中查看元素。

我要观察这里看这个代码,这里呀是什么原因,那你一看啊,好这是我的代码诶,下载来为什么是script语句不能执行啊,是不是前面有过滤,那么你就分析这里啊,看他这个script要写到哪里啊。

如果说他不能执行,你就分析这里啊,他写到哪个地方,是不是要把它进行闭合,就按照那个文章呢选择性的哪些东西呢去闭合,怎么样啊,实施后期后期的操作,但是由于这里让他能执行,那我就不管对不对。

那我们就不需要管,就说能够执行,所以他的流程是大概是这么一个逻辑啊,是这么个逻辑,你看这里他为什么能执行呢,因为这里呢你看啊看这个地方,你看,他写到这个地方来,所以只能执行刚才能执行的不是这个地方啊。

这个地方把它当做字符串,你看到我的SCODE写到这个什么冒号里面去了,写在冒号里面去,当组织不穿的,它没有任何作用了,他就只在这里显示,你看这个是把执行了,那单独在这来了,所以他能执行成功,知道吧。

大家说不能执行成功,你就看这个数据写到哪里去了,是不是前面有这个闭合呀,有这种符号干扰啊等等一些情况,你有选择性的和那个SQL语句一样啊,把它进行这个啊闭合呀,把它释放出来,所以说把这个一看。

你觉得我如果说要闭合,它要把它释放出来,这个核心的机能属于什么技能呢,是不是就是JS的开发技能了,拿那个开发科伤不伤,有没有用呢,这个课很显然这是事情嘛是吧,你连这个借代码看都看不明白。

或者说你压根就没写过,都不知道是啥玩意,你怎么闭合,闭合个鬼呀,闭合,闭合啥意思啊,闭合的意思就是让前和那个什么符号啊,那些东西进行一对一的关系呀,你前面写个双引号,后面每一个双引号,那它是啥玩意呢。

你代码都写了,全部选到双引号去了,不就都是一个字符串的吗,只要了解啊,这个漏洞选好之后,你选好一个漏洞,那你再看下一个漏洞,它都会有相似的地方的,你知道吧,都会有相似的地方的好,这个是反思性夸张啊。

其实网上很多啊,不是说只有这一个,我以前呢都是讲那个本地的八场给他讲。

后面呢大家也不想看啊。

看现在也很低端,但事实上那种本地靶场呢更好理解一些,像这种的还不不复杂一些。

为什么要加DDD哈哈哈,这里面的哇真是这我没话说了哈,那我就拿个很简单的例子啊,那我们把网上我自己博客打开,你说这个你说这个博客里面我要测夸赞,我会测哪个地方,我打开页面看吗,显然不是啊。

你竟然想到你用户输的地方,你看这个搜索,你比如说我搜个一哦,我设个一,它就会显示这个仪的内容,那么很简单的道理嘛,你把搜索个script,那不就显示script吗,对吧,就说你输这个一。

它要在页面中去显示它,这就符合一个发展的逻辑呀,对不对,你不要说哎呀,我点击新闻这个新闻你看有什么用呢,你点击这个新闻你看有什么用呢,你点击这个新闻点开有啥用啊。

点开里面东西,这内容固定好的,你怎么去让他去那个呢。

是不是啊,这第一个地方这里可以测一下搜索原理是吧,还有个地方呢在评论区不是也是吗,搜索地方测反射型,评论区测存储性,因为我把框进局写到这个存储这个地方来,那有人呢访问这个页面哎,就执行了。

我这个评论的这个跨代码是不是好理解吧,那至于有没有,那是另外一回事啊,因为他说不定对你这个接收数据再进行了过滤,或者说一些这个防护啊,那就没有了,然后在我刚才说的这个例子里面,啊啊你就像很简单的道理。

你看我我给他测一下来,我说我写个script是吧,我我写这东西,我我看他能不能这个操作出来,对不对,你看啊,我搜这个框代码,我把它写进去,我搜,你看这里变成了arctic1了,受结果为空。

然后你看一下啥情况,阿克tic的确是有script的。

咋没有了呀,过滤了呀,能理解吧,这就是有过滤的那把school都不给给干没了,干没了,干没了就想想想办法去绕过来,绕过的鸟就存在绕过不了,那就是GG嘛,就这么简单的事情呀,是不是你要观察下来啊。

观察这里对不对,你看SCODE没了,变成个rt1了是吧。

那不用斯script的行不行呢,不用squid也可以呀是吧,不用squid,你还还还还有这种这种这种其他的方式啊对吧,你看这像这种啊,这这这种东西都可以进行这个测试呀,对不对,那你就不就不用SC的。

或者说你要硬钢是SC的,你就硬钢不不不硬,刚你就在这里呢,换其他的这种代码区,在这里搜,啊换成启动代码去搜,然后呢一搜,那自动返回首页,那不好意思,有过滤跑路啊。

好这个就是我们说的那个反射型的一个案例啊,接下来呢我们来看存储型案例,存储案例,那是我这里给大家看一下啊,一个小皮面板的一个事情,我先在模拟一下,给大家看一下效果,然后呢我们再给大家去讲啊。

一个小平民版的啊,小米面板是什么呢,就是一个类似宝塔面板的。

只是宝塔面板没有以前有换漏洞,后面他修复了这个小平面板,他还没有修复,这是一个小平均用户密码,这是个啥情况啊,我先登录进去给他看。

然后呢,那大家呢再去操作啊。

先给他看一下,为什么说他这里有夸张。

先给大家看一下啊,我登录进去啊,这是我小平面板,这是一个控制这个服务器的一些情况的啊,就是用来搭建网站的,我们说的这种服务器类似网站面板啊,这种情况啊,对服务器操作,然后呢这里有个操作,日日大家看到啊。

这日志是干嘛的,是会记录这个你在编码上面那些操作啊,比如说哪个用户的登录成功啊,啊前面的还有用户的名字,这就符合一个跨境漏洞的根本啥情况,大家大家知不知道为什么我登录的是艾德米,它记录了艾德米登录成功。

那我换一句话来说,我把这个用户名改成一个夸赞代码,我登录失败,因为你化成代码,他肯定没有这个用户名嘛,那肯定会登录失败吧,登录失败它会不会记录啊,啊试一下呗,看着啊来看着啊,这边是这个浏览器。

我换一个啊,我重新打开这个面板,这个地址,好需要我登录是吧,我在这里写个什么,把代码代码写进去,弹窗是吧,涵哥,小迪一直K,对吧,弹出这个东西,把用户名写这个密码的随便写,因为我也不知道密码。

我就是随便在这里查查一下好吧,那我点击了提交哎,他说用户名和密码失败,登录失败,因为这肯定登录失败,这用户名哪有这样子的好,那当时这里呢管理员是吧,再看看最近有没有拿个鸟毛,在偷着搞我的日志啊。

偷着这个乱搞我的这个面板是吧,有没有错误操作哎,点一下这个操作时,刷新,诶啥情况,这是谁在登录啊,唉你不要这样搞啊,我先退出一下啊,然后再登录好,重新来一下啊,U k a w,好我们再登录一下看一下啊。

看着啊看卡住日子,哎小李是gay,这谁把写进去了啊,你看那小李是gay,那刚才有人啦,你看你看这里显示代码,这里呢看到没,那刚才有人把它提交进去了,你看那我写的不知道怎么没了啊。

你看只要对方呢去看这个日志的时候呢,就出发了,首页就自动触发了,还不用看日志,那我写的我不知道咋咋回事,没有写进去啊,别人害怕写去了,不知道谁把写进去了,唉我不好说,每次我开个这种线上东西呀。

我说找个东西,这唉就你妹的在上面一直乱搞搞的呀,真是啊,哎,还我是不是不会,他这个有点玄乎啊,他有时候能插进去,有时候不能插进去,但好像和这个验证码逻辑有关系,呐这不是进去了吗,这乙写进去了呀。

这我刚插的呢,那你们都插进去了呢,乙写进去了呀,这又不知道谁查的,这个就是一个典型的存储性发展,对不对,这个就是个典型的存储性夸赞,大家看到了吧,就是因为这个第一方呢就是说这个日志这里啊。

就是说这个功能里面的,它会记录这个用户的登录的这个,这个正确和错误的这个日志,然后呢他会展示这个登录的用户啊,刚好呢我就把这个登录用户呢,改成一个夸赞语句,他就会记住这个跨语句的名字。

而在这里去显示这个名字,而当他去显示的时候呢是吧,页面中就执行了这个代码,典型的这个夸张嘛,而且他又是一个存储的,就是说这个日子呢你如果不把它清除掉,它就会一直存在是吧,就这个意思啊。

所以这是一个纯属性夸赞,对不对,大家能不能理解了呀,那你可能说这有什么作用呢,刚才JS代码被执行了,如果我把那个JS代码它改成一个盗取cooking的,或者说JS页面的配合钓鱼的等等一些方式的。

那么就会进入到下一边,当于GOI呢,那就说等同于我拿到这个小皮面板的控制面板,那面板的控制了,这文件就可以随便上传了,后面就能连上去了,而且能对服务器上面执行一些命令了是吧,数据库的操作啊。

等等一些情况都能进行操作了是吧,就根据你这个面板的功能,来决定后续的操作了啊,好,这个呢,就是我们说的这个存储形发展的一个演示,对不对,成为一夸张演示,好,那么现在呢我们再来进行demo类型的啊。

DOMO类型的,好有些人呢就喜欢搞是吧,老喜欢这个上面搞,我别搞我这个小平民吧。

你搞吧搞吧,密码告诉你,你上去鬼捞都行啊,这我自己搭建的是吧,9080的你可能说这有没有什么用武之地的。

下面吧你FOF1搜啊。

来给他搜一下吧,那这全部是小平面板的了,图标都给你搞出来了啊,这都是网上搭建的小平面板用的小平面板的,那你这个夸张就是可以是吧,玩的呀,但是后续我们不说了呀。

用foo1搜很多小品源码搭建的,好,这个是我们说的那个存储型的,这个这个夸张的演示啊,呃这个反射性和刚才这个存储性两个案例,有没有看明白呀,能不能从这个案例上面区分它的类型呀,可以吧,有区别的哈。

这很简单的一个最大区别就是一个有保存,一个没有保存是吧,那这最大区别是不是,当然你在回合中你是不知道这是什么类型的啊,不过你在恒河中的话,你在测试的时候,那你可以把它先归类,就很简单。

刚才那个用户的那个地方,他要产生这个夸张的话,那肯定就是记录那个用户名嘛,对不对,所以呢黑色中的话要判断的话,需要你自己猜测啊,那如果说从整体上面我们去分析这个流程的话,那是很清楚这个类型的啊。

高了别人报警怎么办,报警就说是隔壁学的呀,这还不明白吗哈,这个我们再来看第三个案例啊,第三个案例是个demo类型的啊。

我先给他看一下啊,豆类型给他随便测几个,大家就能看到这个效果啊,我这里呢给大家看一个有过滤的,和一个没过滤的都给大家看一下,这样子呢会更加的明白这个出路。

我先小开个代理好吧,因为我要上谷歌,那去找一下这个谷歌呢不可描述性啊。

嗯要搞个提子,哎怎么点不了啊,什么鬼啊,哎怎么点不了啊,鬼算了,直接开吧。

大家看一下阿兰,啊再看一下这个地址啊,这里有个地址啊,给大家看一下啊,来我们观察一下这边的一个多么类型的。

这是个地址,这个地址干嘛的,你看一下啊,我一访问它,它自动跳转到这个地址,这是一个类似的一个跳转对吧,截止这个网站上面,这是个盗墓类型的啊,但你看一下他有没有夸张呢,对不对。

我这里面通过抓包给大家看一下,来这是那个数据包啊,关注一下这里面有没有夸张啊,把数据包呢提到这个膜下面去看看一下啦,这是我们提交信息UR的一个地址信息,然后我们看一下,那这里是显示了这个信息啊。

显示信息你看下面有个代码,这个代码是干嘛的,我们可以给他看一下,这是简单的,那document get取这个表单里面的id进行可理,可啥意思啊,取这个啦,i id那先呢去触发这个A标,这个A的啦。

等它取它,然后进行这个克里可的一个操作,其实就是跳转的一操作,就触发这个地址嘛,这个地址是我们提交的地址,对不对啊,页面中是显示这个信息,显示这个网站啊,我代码中是也显示这个网站诶。

那我这里试着是不是能够尝试进行发展尝试啊,把这个地址给改,改成个script的,它是取的是这个值嘛,在验证中,这里,对我改成东西,大家看一下啊,来进行提交,哎这报错了,报错是什么原因呢。

好我们再看一下啊,下面谈不谈,我写这个等级子上面,写进去之后,你看代码呢出现什么情况了,代码式也写进去了呀,但这里大家有没有发现一个问题啊,我写的这个减号号呢没了呀,而且还有最重要的是。

我这个写作地方到哪里去了,到A标签里面去了,变成了个双引号里面,这不就要闭合,这不就绕过了吗,我先不说这个尖括号的问题,我写了这个A2F里面去之后。

我接下来怎么办,我要把指引出来,把B合掉啊。

该怎么办,前面讲过了吗,来可以用这个script,这里呢把执行出来,那用这个JAVASCRIPT,不用这个括号把它写进去,关一下再进行勾,哎U还是不行还是不行是吧,我们看一下啊,代码,哎什么情况。

刷新一下好不好,看这里看这里呢,你看我写进去之后看代码,那又把这个JavaScript的也把过滤了,看到没,就是这个呢是能够执行出JS代码的,但是它有过滤JAVASCRIPT尖括号,过滤关键字也过滤。

嘶因为他一旦不过滤的话,这里就会执行出来,但是没有执行出来,就这么个情况,有过滤啊是吧,这是有过滤的啊,过滤至于怎么绕,我们先不管它,过再讲就讲多了嗯,再看一个啊,看没有过滤的。

看是不是能够执行一个JS代码。

看这个啊,这个例子。

那这个例子的啊,来这是个跳转网址,我先把来换一个网址试一下,3W点小白点com,这是个信息,来跳一下,来八点com,那我刚才看这个了,看这个地址的啊,我把这里改改成个什么,大家看着啊,改成个JS嘛。

点进去诶,报错了啥情况,来我们看一下这个代码呢,看一下啊,那我写到这个上面之后,他为什么报错,看它返回原代码里面,就是看浏览信息是你四错误啊,然后这个代码呢并没有在这个里面产生好,那我就试验一下。

换一个这个其他的地址啊,就换这个正常的AHP啊,写个错误地址试一下啊,先随便写个勾位进去看他的返回,看他这个展示到哪里,我看下代码啊,看代码怎么写的啊,Now we are request。

就是一个创建一个对象,Request get request windows,Now crab,还是指向这个request url的信息,那说解说这个URL信息,那这个request等于request。

这是一个函数,再看上面是不是function request呀,啊这里的接收信息了,那么简单的说就是接受your后面那个值呢,然后进行一个lo windows location。

HR就是个重定向的嘛是吧,那么这里呢我们就知道了,然后我这里换一下,重新加嘛,我就直接让他什么执行JAVASCRIPT,已执行一下A弹窗,那么这个地址再换成你的,后面把它组合成JS的那个代码。

比如盗取cooking的,把这个地址发给别人,说打开看一下,一打开好执行介代码,那第二代码呢具体干嘛,那就是你的事情了,对不对,是吧,就这个意思哈,我们就说了这个情况啊。

啊我刚才说那个绕过什么东西我不讲啊,有些人说哎呀,是不是不会啊,就是逼我讲,我就是不讲,我就是不会知道吧,东西不能学多一次,不能教多的,你教多你会那个的,你连这个都还没搞清楚,你搞那些干嘛呀。

那不是你现在操心的事情,可要一天天来,你不能说一下子哎呀,我今天伤开心的,我一下子都给你讲了,不行的啊,讲多了不会好,只会坏的啊,最主要是我现在讲的,我下节课讲啥呢,我讲不了了呀。

我的这个就是一个典型的啊,你们刚才有人说哎呀我去交漏洞。

你交吧交吧,那没人收的,这个是简单的这种夸张地位漏洞谁都不会要,除非他明确他搜这个漏洞啊,你存储性漏洞他会收这种东西,他不会收的,XS能不能进行RC1浮现一下,XSS不能执行RC1那种RCE。

是他配合了其他的操作的进行的,不是不是这个通过这个发展,是通过发展呢,再配合其他东西把它配合出来的啊,这个是后续的利用,那不是我们关心的问题,我们是先呢把这个唉你说的小平,慢慢的网上都搜到那个文章。

那个夸赞什么RCE啊,那个东西,但这个东西呢它是后续利用的文章啊,我们讲的是漏洞,你不要搞错了方向啊,那就这个鬼XSS那个什么,这个RC1什么情况呢,就这里那就我刚浮现的嘛哈,他这里呢写个POC进去。

进去之后呢,把它写进去呢,在这里有个计划任务,这个计划任务是干嘛的呀,啊我们现在没讲嘛,计划任务就是我们在提权里面,在那个里面喜欢讲的是吧,还有权限维持里面的,就等同于呢你上面的加了个计划中。

计划中物呢就是让他再去写个后门啊,这就是那个什么RC1,这哪是夸张引起的呢,这是先通过夸张呀,然后呢拿到这个小平面板的权限之后啊,然后呢做这个事情,而且他是啊不是啊,不是他是用这个呃小平面板。

他非常熟知这个小屏面板的后台功能,然后用这个JS代码呢就写了一个这个东西,这个写东西是干嘛的呢,就是在执行的时候呢去访问这个计划任务,然后呢用计划任务呢去生成一个这个写后门的,一个路径,是这么个情况。

这是需要你了解这个后台这个创建计划任务,那个数据包,你如果说不了解黑盒测试总数,你哪知道这些事情,你看那个代码写的很清楚,去访问这个地址啊,这个test list就是计划任务的嘛。

然后在这里呢去呢去写入数据,那么就等同于呢对方呢在触发的时候呢,不小心触发这个数据包,就用别人的权限呢,去把这个什么计划任务创建一个啊,就这么一个逻辑,这哪是什么啊,XSS这个RC1呢。

是因为呀他知道这个后台面板的一些那种,创建计划任务的那个数据包,用JS呢去模拟写这么一个数据包的JS文件,然后呢去在让对方执行JS代码的时候呢,把这个JS你给他执行,就等同于呢用管理员自己的权限呢。

去触发了一次创建计划任务部的数据包,是这么一个逻辑,所以它的核心啊,你要玩的高端,玩的宣,就是需要你有代码能力呀,如果说在黑盒中,你不知道这个面板的数据包,那就只能是吧。

先打到这个后台里面去再做这个事情,对不对,所以那个XS是引发这种RCE,只是表面看上去牛逼死了,其实呢他和这个差S没关系,对不对,这就是经常网上你看到一些文章一样的,你看上去那牛逼死了,对不对。

其实没啥用,你看的那个漏洞,那和他压根就不是一个东西,只是说他在这上面,思路上面的去利用那些这个技巧,核心呢不是这个漏洞,核心的是他能创建这个RCE的核心,是他了解这个创建计划任务那个数据包。

老人用代码把它写出来了啊,你会写代码,你知道这个数据包你也能做,这和这个XS是有什么问关系吗,没有关系,那换个人也能洗,好这个是我们啊今年内容啊,这个三个类型的夸张呢啊就给大家讲到这里了。

然后呢还有时间呢,我先再来给大家说一下,关于这个夸张的一个漏洞产生的第一方啊,啧刚才测了一下的,大家都知道了啊,其实这个上面写的这种数据交互的地方啊,啊你能自己想一大堆,我只写了几个,它最核心的点。

就是你要明白这个夸赞它的原理原理,那就是我说的就是输出,你先看输出再来念一下输入,记住这个流程就是看页面显示和它的反应,有些显示是不在页面中显示,就比那刚才这个啊,这个呢它页面上不显示,对不对。

它不显示的啊,要看这里呢它不显示呢,它并没有显示个JavaScript art1,他在这里没有显示,但他咋个执行呢,就是因为它JS代码那对它进行处理,那这个是多么性的呢,它结束之后呢把你跳转。

然后跳转里面,那要去执行它是吧,什么样的逻辑,它并没有在这里显示,有些呢显示呢你还要看这个功能啊,还要看这个代码通过这个输入的数据,你大家想想这数据你能不能控制它,在哪里控制它。

然后呢就更改那个输入的数据,把它更改成JS的常见代码,然后呢再让它显示,如果他能执行出这个JS本身的效果,那就是夸赞执行不出来,你就要分析他是不是被闭合掉了,是不是被过滤掉了,然后有闭合就绕闭合。

有这个过滤就绕过滤,能招就有,不能捞就没用,能不能逻这个逻辑能不能搞清楚啊,这个逻辑能不能搞清楚,这就是这个夸赞的核心部分啊,你只要先把这个逻辑搞清楚了,后续的利用呢,那是后续这个玩法的介绍。

那不是你现在担心的事情啊,对不对。

然后关于这个B和这方面呢,我也给到一个文章了是吧。

就是你看一下,你这个代码呢是写到这个哪个地方呢,写到A标签里面呢,in mage标签呢还是这个标签是吧,哪个标签呢它都都有一些写的嘶,然后呢后面呢他这里呢还有一些绕过,但实话实说啊。

额如果说你真正在实战中碰上了这个过滤的话,80%是绕过不了的,他这个绕过呢都是一些,就是一些碰运气的吧,为什么这样说啊,因为哪怕是对方呢,他写了一个过滤到里面去的话,基本上过滤是很严谨的。

就说你除非是碰上那种是吧,那半吊子他这里那就随便写了一下,大部分如果说对方有意在过滤这个XSS的话,基本上是很难去捞过的啊,一般主要就是说去闭合多一些啊,他有过滤的话,大部分都照顾不了。

所以一般我们碰上这个过滤的话啊,你测一下不能绕,过过去就酸了啊,就不用测了,但这个闭合呢没有绕没有没有绕,没有过滤的话啊,你就测这个闭合啊,你不要把这两个搞一码事情啊,闭合是闭合,过滤是过滤。

我刚才给大家看到的那个案例,就这个案例嘛,那就这个案例,这个案例呢就是两个都有,一个是我输入JAVASCRIPT的arctic1,它在这里呢只显示arctic1JAVASCRIPT没了,说明这里有过滤。

把这个加速柜的过滤毛过滤没了,这是过滤,闭合是什么呢,闭合就是说即使这里按这个你把代码写到这里,他有可能呢也执行不出来,原因就是因为呢,你写的数据呢在这个双引号里面,或者说在这个A标签里面。

你需要在这个A标签里面执行JS代码,就要参考下这种类似的啊,这种类似的能理解吧。

就说啊像这种类似的,它就能自行出来,就像我刚才做这个案例演示的时候,我为什么是吧,把这个变量呢写到这个什么里面,SRC里面你直接写script的art1。

它不能执行算哎我后面呢就换了种写法,就换了种这种写法是吧,它就能自行算,所以啊你要明确知道他怎么执行这个JS,所以这个案例呢它是两个都有,又有过滤,又有这个前面这个东西的标签的这个影响,能理解吧。

那么如果说他这里没有过滤的话,那么你只需要在这呢写成JavaScript art1,他就能执行这个代码,然后把ARTIC给他改成你要攻击的啊,就是你那个比如说你要进行这个,盗取cookie的那个介代码。

或者说你要搞什么事情的介代码,改成那个就可以了啊,把RT给替换,形成你自己想要的这个测试代码就行啊,咳但是很显然啊,他这里呢有过滤,导致个JASCRIPT的没了,所以效果也就执行不出来了,你就要绕过它。

但实实话实说,这个是很难绕过的啊,很难绕过的,因为对方一旦考虑到这个过滤的话,过滤这个XS的攻击的话,大部分的情况下网上的都有很完善的方案,套一下就能形成就形成阻止,嗯啊这是我们说的这个事情啊。

大家能不能明确啊,啊把它写到这个笔记里面去压一下啊,就在这个前提,金庸这里啊,流程呢呃,它的流程呢就是先呢看输出啊,想输入在哪里,然后呢想到这里之后呢,更改这个数组啊,去这个看看执行执行呢有两个效果影。

响一个呢就是我们说的这个,表前啊,还有个呢就是我们说的过滤器,对不对,看执行这个执行的这个结果啊,有这个决定,有这两个决定,主要这句话啊,那么后续呢更改这个输入,就是我们说的这个攻击效果啊。

这个输入的就是代表这个你要做什么事情啊,做什么事情呢,就更改什么输入的代码,好这个就是我们今天的内容啊,给大家也总结了一下,看看大家有没有什么问题啊,有问题就问啊,然后下节课上什么内容呢,就是往下进行。

就是像这个拓展类型啊,啊不是说我一节课呢想上少一点呢,或者说这个休息一下啊,这个偷懒啊,是这样的啊,这科呢我如果说按着整整两个小时这课上的话,哎那我今天呢就还还可以上个支点,比如我上个接口的。

当时呢我如果说伤这个接口的话,哎他就和这个基本类型,那就有点差不了,你又上基本类型,那又上拓展类型,那我下节课再上的时候,我就上这后面的它就不是一个整集,我就是想买个正经的,刚好够一个课。

这样你理解起来的话,唉你就好总结归类一点,如果说这个课程内容多是吧,我可能就说哎呀上到这个上的,上了个这个快到十点钟,可能都还有一些东西都还没上好,就要讲的非常快,才刚好在两个小时之内能控制住。

把这个内容上完,所以有些坑他他为什么一个小时有些坑呢,他可能一个半小时,有些可能就两个小时还讲不完,就是那个累呢,它比较多啊,你如果说我刚好要把那两个小时课到,补到那个一个小时上面去。

的确是呢课都差不多,但是啊这个科的分类那就不好分了,他是一个个小知识点啊,这样子你好总结一些,他有些人就老记我偷懒,就像今天我备课的时候啊,我05:30我去写这个笔记,有个人呢在这里备注一下,我把删了。

说05:30才备课呀,哎神子尴尬哈,我写笔记就是说课已经备好了,只是把笔记整一下就可以上课了,我我备课是先去把这个实验,这些东西全部做好了,要讲哪些内容安排好了,我再去写这个笔记。

而不是说我笔记一写才开始背啊,想太多了啊,那如果写个笔记就能上课,写个笔记就再来备课,那5年半的肯定时间不够,我写笔记就说明已经磕的差不多了,就只是搞个笔记,把它搞上去就行了啊,因为不备课的话。

翻车的几率太高了,有时候背完课翻车都有时候翻车,对不对,不用解释了,大家都知道你很辛苦,我从来不是说自己辛苦的事情,我给他解释,就是不希望大家认为说是我偷懒,说故意怎么有时候一一次上这个一个小时啊。

一个一个半小时啊是吧,这种情况,哎你又说什么,我就是不会啊,你要这样说,我也没办法,唉你们就喜欢我,越解释就越喜欢,反着说,唉,真是的,没办法,农夫直播一次两三个小时,哼还天天在直播吗。

啊你咋不说隔壁的天天天天都不直播,给你看录像呢,还有人去报名隔壁的什么5000啊,6000啊,甚至1万的课程,一个星期给你直播一次或者两次,还很多都是那种很马虎的去对付你,你是没碰到那种情况。

好看大家有没有什么问题啊,刚才有人说什么不懂这个多么差,SSS不需要懂,你只要知道那个多么XSS呢,是那个JS里面去对那个多么疏的操作,产生的就可以了,什么是demo输呢。

就是我说的对你这个ATM代码中的表单里面的值,标签里面的值做这个处理的,什么意思啊,说白了你不懂多么新的这个夸张,就是因为你没有搞过开发,你搞过开发这个东西是很好理解的,我那个安全开发的时候。

还给他讲过那个多么新的XSSS,一看你就没有听过呀,是不是那这个DOO型的那个那个代码,你看当时这里我还有代码,你没看,这个DMO型的操作,那我可以打开给他看一下JS的DMOATL文件,Normal。

点TEM号,嗯嗯怎么打不开呀,那不是JS里面吗,哎这个是JSDOM01的呀,这打不开了呀,哦写错了,那就是那个那个写的嘛,你看这个图片是吧,我点一下这马还没换,把那个编码改一下啊,唉这个编码算了。

懒得改了啊,这个是那个前期做了个演示的时候啊,这个,操作的一个流程,然后呢给他写的啊,就说呢这个代码中呢有这个这个操作嘛是吧,然后是个什么情况呢,你看啊这个图片当你去触发这个按钮的时候,那触发一个尸检。

这个尸检里面那就是对这个什么,你看啊对这个里面的这个image值呢,把它进行一个设置导致的,然后这个设置呢就假如说这个值呢你能控制它,你说这个词呢等于一个JS代码,然后呢执行夸张啥意思呢。

就说这个demo夸赞漏洞呢就是一些这种JS代码呀,对于这个网页本身的这些文件,里面的这些数据来进行操作,比如说我要操作这个,这是标题把它更改成另外一个数据,然后这个另外一个数据呢是由你能控制它的。

你把它改成一个JS代码,然后呢他去进更改的时候,那就代码就写了这个页面中了,所以导致的夸赞,这能量就是多模型夸张,能不能理解啊,这应该好理解了吧,其实呢那就是对网页内容里面一些这种。

比如说标签的这个内容啊,或者这种id值啊,或者说这个里面这个东西呀,它的参数名字啊,这种标签值啊,这种东西要改啊,他就是对本身这个网页的这种代码要改动它,改它这个里面的东西呀,或者说改这个东西呀。

改这个东西呀,他把取它里面的多么书,把取出来之后进行更改,然后这个东西呢由你来控制所导致的,这种夸张啊,这个就是多模型夸张,那么他是怎么发现的呢,就是在网页打开之后啊。

你可以通过这个审查元素和源代码中来看啊,他有没有这个代码,有没有对这个里面的东西进行更改,而更改的地方呢也能控制它,这是他发现的一个情况啊,所以你看他这个呢就是个典型的呢,就和那个DA差不多嘛,你看。

对这个也是说的很好啊,就是这个德格玛的这点东西,刚才有个人说什么呀,讲这个S飞机差SS,我给他锁一下啊,本来这个课呢我是准备上的,我看到是这个鸟毛说的啊,我不想上,为什么呢,因为这个鸟毛啊。

就是下午说那个什么鬼,05:30才备课呀,就是这个两毛啊,我刚才故意不打他的,我生气呀,我是个记仇的人呐,好不说了啊,大家看有没有问题啊,有问题就问啊,我们就把录像关了,不把录像搞太大了。

下节课的内容也给他说了是吧,你们老说我对不对,说实话我还是比较负责的,为什么这样说呢,我前一阵子不是去四川渠乐堂嘛,对不对,耽搁大家这个三四天的时间,那回来之后我就给他是吧,按时上课,就隔一天30课。

我都不敢拖累,不敢说是什么不上课呀,今天休息一天不敢呐,因为我知道我前面那个给他拖了,我现在不能再拖了,自己家对他负责呀,对不对,我都老在这样想,这么负责的,好老师,你还老说,那说这怎么想的呀,拜拜啊。

我们后天再见啊,后天上下面内容啊,后天的XSS呢,说实话啊就是拓展的XSS,那还是有必要学一下的啊,啊很多那种XS些那种高级玩法,那就在下一课再去讲,今天呢就是先给大家开个门啊。

先了解一下XS的基本概念和它产生的情况,后面呢就是XS那些他的一些这种不常见的,一些法险和一些利用。

好就说这么多啊。

posted @ 2024-09-29 15:12  绝不原创的飞龙  阅读(51)  评论(0)    收藏  举报