关于考cisp-pte的一些复盘

admin 2022年9月10日14:26:272519 views字数 2799阅读9分19秒阅读模式



关于考cisp-pte的一些复盘


关于考cisp-pte的一些复盘



我是9.6号去考的pte证书,一句话总结就是,出了一些新题目,但是难度并没有增加,最大的问题就是考试现场的环境,还有想信题目会出错。去年五月份也考过一回,当时拿到了7个key,但是不知道为啥没过。这次算是第一次补考。



总结


分两部分,实操题思路和坑点总结(强烈推荐看坑点总结)



01

实操题前五题的思路


sql注入

1

是一个新出的题目,题目给了一个登录页面。

我的思路大概就是先扔过去扫目录,然后看看F12,发现了有register.php页面,想着随便注册一个用户看看。

后台要是没有东西,一般就登录框,或者注册点有问题。

登录进去后,有管理信息的界面,但是界面上显示没有权限,并显示了管理员的邮箱账号。

然后思路又变成,有越权?或者直接拿着账号去爆破?或者就是概率及其小,但是pte考试常出的二次注入?

前两个思路测试完之后发现只剩第三个思路,注册一个

[email protected]'#

注册的时候会有js限制,拿之前的注册包,然后改成这个就可以绕过,然后拿着这个账号去登录,登录也有js限制,先输入个正常的账号,然后再去抓包绕过js限制,登录成功后可以看到有处地方存在修改密码的地方,然后直接修改密码为123456,然后用[email protected]/123456登录即可。

登录完成这只是第一步。。。登录后在后台查看管理信息的界面,发现可以删除东西,抓包看到删除的地方有sql注入,然后想着直接扔sqlmap跑。

跑呗,第一次没跑出来。。我以为有问题,然后又跑了一遍,就跑出来了。就很无语。sqlmap语句

sqlmap.py -r 1.txt

然后找数据库中哪里存在了key,找了一圈没找到,然后直接dump了数据库

sqlmap.py -r 1.txt --dump

然后没发现,仔细看题目是在根目录下,想着无非就是getshell了呗,我直接sqlmap跑,前面看过权限为dba权限了。

sqlmap.py -r 1.txt --os-shell

可惜的是os-shell不行。。。我就试了sql-shell

sqlmap.py -r 1.txt --sql-shell

可以搞,然后就是读文件

select load_file('/key');
文件上传

2

正常的文件上传,慢慢测就好,无非就是检测内容,检测后缀

GIF89a<?php system($_GET['A']);?>

然后get参数传

A=cat key.cisp


文件包含

3

感觉文件包含还行,之前有次看群友在讨论的时候,顺便练习了一下,两个题目差不多。

先是看到有包含一个?file=hello,尝试直接读/etc/passwd

?file=/etc/passwd

然后直接读key.cisp即可

不过有些时候pte考的比较坑,后面细说



命令执行

4
<?php $a=$_POST['a'];eval("$o=strlower("$a");");?>

我当时第一想法就是直接闭合

$a=");system("cat key.php");//

然后读不出来。。。我人都傻了

这个题从开头到结束,我没做出来。。我感觉我的答案也没问题啊。后来我看了颖奇大佬的博客,一模一样的payload,但是我没出key。




失效的访问控制

5

题目如图,最简单的一道题,但是考试现场有坑,后面说。

关于考cisp-pte的一些复盘



综合题

6

综合题比较简单,但我做的时候,出了一些问题。

拿到目标直接扫目录了,有个phpmyadmin,然后直接root/root登录

登录phpmyadmin上去有第一个key。

然后找到web站点80端口的管理员账号密码,我是直接hackbar生成123456的md5然后进行替换。

替换后成功登录。后台没有key,应该得拿到shell。

但是咋传php马都连不上,就很尴尬,但是上传应该是没有过滤的,于是我传了一个system马

<?php system($_POST['a']);?>

system是可以执行的

netstat看到开启了3389端口,要不然我还真记不住注册表开3389的语句(不过自带的工具包里面有能开3389的工具)

然后一串操作,添加用户,看组,添加到管理员组,关闭防火墙。

net user xxx Xx123456 /addnet localgroupnet localgroup administrator xxx /addnetsh firewall set opmode mode=disable

然后用xxx登录,发现到了c盘下的web目录,找到另外一个key。

然后最后一个key应该在桌面或者桌面的回收站里,xxx没找到,直接更改了administrator用户的密码,然后再次登录3389,发现回收站里的key


02

坑点总结


坑点1:sql注入是站库分离的,所以getshell不了,只能sqlshell,然后也只能load_file,要是有其他思路能拿到key的,希望师傅们不吝分享。


坑点2:命令注入,那玩意环境我不知道有没有问题,但是payload应该没问题,还有一些题需要先给key.php给权限,才能读到。


坑点3:第五个实操题,环境有问题。。我当时反馈给了监考老师,然后老师说这是新环境,移题目的时候把代码弄错了,然后弄了半天。


坑点4:其实最恐怖的不是题目难度,而是考试靶场环境,还有写key的时候一定要仔细仔细仔细,考试的时候是不能复制的。考试一半,突然断网!有时候靶场里面输入不了东西。考试的时候,开考两个小时,我还为了环境头疼。


坑点5:文件包含的时候正常题目使用伪协议啥的,完全没问题,或者直接读,但是有时候会过滤伪协议里的php,然后把其他伪协议放黑名单,双写php即可,例:pphphp://filter.


坑点6:综合题的80端口文件上传的时候,我们传的一句话马能解析,但是使用菜刀,蚁剑连不上的时候,不要着急,使用system函数也可直接执行系统命令,或者直接使用readfile()函数读key。不要最后一道key,拿到证书也完全没问题




03

最后一点吐槽



我要吐槽我要吐槽,考场里的抓包为啥只有burp,为啥不能有yakit,我不服!还有一堆老工具,用的头疼。还有第五题不是有问题吗。。然后有人在监考老师没改题目的情况下把key拿到了,我不理解,可能用了什么高科技。还有第一题的sql注入,二次注入,然后删除点注入,还只能load_file读文件。。。你搞这么复杂干嘛,还不如来一道sql注入,然后弄点waf有意思。还有pte最新发的通知,以后考pte可能会变得更难,或者更复杂,例如那个sql注入(新题),还有pte以后会更加严格,各种报名渠道以后都审核的更严格,想走后门的这种不太可能,有就当我没说。




往期文章推荐

SRC 挖洞tips
一次src挖洞经历(不是一个)
自己遇到的一些逻辑漏洞
一文学懂正则匹配
对单一的ip目标测试
一次命令执行的实战绕过



原文始发于微信公众号(虚拟尽头):关于考cisp-pte的一些复盘

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年9月10日14:26:27
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   关于考cisp-pte的一些复盘https://cn-sec.com/archives/1290136.html
评论  2  访客  2
    • zz 0

      第一题的SQL注入抓包绕过js校验这步操作大佬可以详细说一下么,考试那会卡就卡在绕过js校验上

        • admin

          @ zz 先发正常数据,然后burp拦截抓包修改包内容,应该是这样子

      发表评论

      匿名网友 填写信息