cisp-pte考试复盘及常考题型总结

一、选择题

        说基础也不基础,pte的题都是偏实践的那一类,感觉也不算简单,不好好看看还真容易栽这上面,那就太可惜了。比如:DMZ区、php伪协议、谷歌命令、%00截断中对php版本的要求等等类似的。

二、大题

1、sql注入

        (1)碎碎念:第一题日常sql注入,就是找闭合费了很久,pte考试中的sql注入似乎会故意让你没法用sqlmap跑,只能手动注入,不过以往的题也有那么几道用sqlmap跑出来的,或者有时候加个--level、--risk也能跑出来,近段时间难度加大还是手注比较靠谱,用手注就得记清楚哪些个命令,还有花里胡哨的闭合方式和绕过等。

        (2)步骤:

                1)找注入点,如果发现任何的提交页面都可以尝试一下,特殊字符,如:’“)#等,如果提交/注册/登录失败,说明该页面大概率有注入漏洞,那么根据他的报错想办法进行闭合,然后通过各种注释方法把后面的内容注释掉。(判断方法:如果闭合成功或注释成功,页面是正常显示的,失败页面会出现错误。)

                2)order by 列数,测试列数

                3)联合查询表名——>联合查询列名——>联合查询敏感信息,就能看到key了

                4)还有一种是题目提示了key存放的目录,比如/tmp/360/key,那么测试过列数之后,就可以直接使用union select 1,load_file('/tmp/360/key'),3# 来查key。

        (3)常见注释:#、%23、--+、or ‘1’=‘1等

常见绕过:空格绕过:/**/、关键词大小写绕过、双写绕过

        (4)sql详细过程见笔记:

pte练习题(34011-34015)_haoaaao的博客-CSDN博客

sqli-labs练习——sql注入_haoaaao的博客-CSDN博客

DVWA练习——sql注入_haoaaao的博客-CSDN博客_dvwa sql盲注

2、文件上传

        (1)碎碎念:常见的构造图片马,上传抓包改包绕过,然后蚁剑连接就好了。一般都是这类题。

        (2)步骤:

                1)画个简笔画,保存jpg,写个一句话木马,保存为php,在两个文件保存的地方打开cmd,执行命令:

copy /b xx.jpg+yy.php xxyy.jpg

就构造好了一个图片马。

                2)打开burpsuite,该网页代理和burp一致,开启抓包,上传文件,将后缀名改为.php,有时候对php屏蔽和就改为.php3,将下面乱码中隐藏的一句话木马部分字符改为大写进行绕过。然后放包,就上传成功了。

                3)复制上传图片马的地址,用蚁剑连接,key一般就在html的目录下。

pte练习题(34041-34045)_haoaaao的博客-CSDN博客

(与34042题目类似)

3、文件包含

        (1)碎碎念:这个题目有点gou,key的文件名不是key.php,是key.cisp,万万没想到,而且人家就在题目中明明白白写着,只是很容易想当然是key.php,于是就会各种伪协议加各种绕过都不成功,后来才看到那个.cisp。这题用php伪协议可以直接读key.cisp文件,但php://伪协议头需要双写绕过

        (1)payload:php:/php:///filter/convert.base64-encode/resource=../key.cisp;

要想看html引入的代码的话,可以加–>闭合,就可以在页面上显示出来key值。

4、代码审计

        这个代码给的很简单,不需要会太多php也能看懂,就是闭合之后,加个马就可以,或者直接system读文件也可以

        思路一:payload:${@eval($_POST[‘x’])} ;//    post验证直接写:x=phpinfo();

        思路二:http://ip/start/vul.php?a=”);system(‘cat key4.php’);//

5、失控的访问控制

        这个也是常规题,题目有提示guest用户无法查看key,admin用户才可以,那把访问伪造为本地admin用户就可以。

        burp抓包,改一下cookie,显然应该把false改成true,然后有个加密的username,看到%能想到url编码,那先进行url解码;然后可以看出来是base64编码,再进行base64解码;发现是guest,改为admin,再进行base64编码+url编码;

        再添加一个http头,X-Forwarded-For:127.0.0.1,放包,页面就显示是admin用户了,key也在页面中显示。

6、综合题

        (1)碎碎念:只拿到了第一个key,这题有点难,甚至扫出来的端口都有个没用上。。。。

        (2)第一个key步骤:

                1)nmap扫端口,80(http)、21(ftp)、22(ssh)、3306(mysql),6721(api);

                2)先用武器库里的xftp连接21端口,选匿名连接,然后编辑器打开config文件,里面有数据库的用户名和密码;

                3)连接mysql,用户名和密码在上一步里,进去后找xxx_user的表,会有Mayo用户,修改这个密码,记得密码进行一次md5加密(新建查询select MD5 ‘密码’);

                4)burp扫目录,会扫到ip:80/index.php目录,是后台,然后用刚刚更改的Mayo用户名和密码,登录成功会有第一个key;

7、总结

        进考场先交手机,考场给的wifi没办法连外网,只能用他的网进他的环境,用别的外网也没法进环境。大部分都是常规题,除了综合题有点离谱,但是不要最后那两个key,前面加起来也过70了,最后有个不安定因素,不知道是环境出了点问题还是我提交的key格式不对,后面大题的key都没有提交上去,最后只有选择题有分,但是我提前把key写在记事本了,监考官把我的key和答案进行核对,正确,然后又和我说你的key是正确的,后台随后会帮忙改一下,没关系,你这是过了。虽然他这么说,我还是很不安啊很不安啊很不安,怎么就没那么顺利呢,真的是,大起大落,心态差点崩了,后面又问老师,什么时候能查到过没过,回复两个月左右,我更emo了。。。。。。。得提心吊胆俩月。。。。。。。毕竟疫情期间跑出来考次事也怪不容易的,学校我都回不去了

你可能感兴趣的:(小记,安全,web安全)