写在前面
考完CISP-PTE有一段时间了,趁着记忆还热乎,写个经验贴给后面要考的朋友参考。具体题目不方便透露,懂得都懂。但题型、踩坑、注意事项都会说清楚。
先说结论:没那么难,但别掉以轻心。
考试基本情况
考试形式是选择题+实操靶场,总共4小时。选择题大概30分,实操70分,总分70分及格。
有个坑:选择题必须过60%的正确率,否则实操分再高也白搭。选择题考的都是基础概念,不难,但别裸考,多少看一眼。
题型分布
实操题主要考这些:
- SQL注入——基本功,每个综合题都会碰到
- 文件上传——必考,而且校验方式会变
- 文件包含——经常和上传题一起出
- 代码审计——给你一段代码让你构造payload
- 访问控制——改改cookie绕权限,相对简单
- 信息收集——端口扫描、目录扫描、源码泄露
- SSRF——内网端口探测、读文件
- 提权——综合题最后一步,拿key
具体怎么解后面会说,先说考场上的真实感受。
考场真实经历
1. 工具找不到
这是最坑的一点。考试会给你一个工具箱,但不是所有工具都在里面。
我当时做综合题,需要爆破一个md5密码。我知道要用什么工具,但工具箱里没有。找了半天,最后发现放在C盘的其他目录里。差点第一个key就没拿到。
教训:开考先花几分钟把整个环境摸一遍,看看工具都放在哪,别等做到一半再找。
2. 命令行要记熟
这个真的很重要。我平时用sqlmap都是直接敲,但考试的时候一紧张,某些参数就忘了。
建议:考前把常用命令多敲几遍,特别是:
- sqlmap的基本用法(-r、–file-read、–batch)
- find提权的命令
- 数据库写马的语法
- 文件包含的php://filter写法
这些东西平时觉得都会,考场上一紧张真的会忘。
3. 时间很充足
这个可能出乎很多人意料。4小时其实很够用,我当时做完还剩了不少时间。
所以不要慌,慢慢做。先做会的题,不会的跳过,最后回来啃。综合题的第一小题一般都比较简单,建议先把所有大题的第一小题都过一遍,把能拿的key先拿了。
4. 填完答案记得校验
这个是血的教训。我有一道题,key填错了位置(把key1填到key2去了),交卷前检查才发现。
每做完一题,回头确认一下key填对了没有。
各题型简要思路
SQL注入
基本功,不多说了。二次注入要注意注册时构造恶意用户名的思路。sqlmap的--file-read可以直接读key文件,省得手动注入。
文件上传
上传失败先判断是哪一层校验:前端、MIME、文件头还是内容检测。然后逐层绕过。加GIF89a头、改Content-Type是基本操作。后缀试php、phtml、php5。
文件包含
php://filter/convert.base64-encode/resource=读源码,data:执行命令。包含上传的图片马时不要加php://filter,直接路径包含。
代码审计
核心思路就是闭合语句。看清楚代码里用的是单引号还是双引号,然后构造payload闭合它。
综合题
综合题一般是多个key,分布在不同地方:数据库里、网站根目录、管理员桌面/root目录。
解题流程:
- 信息收集——端口扫描、目录扫描
- 找入口——弱口令、SQL注入、信息泄露
- 拿shell——上传木马、数据库写马
- 提权拿key——find提权、SUID提权
前面两个key一般比较好拿,最后一个可能需要提权,稍微麻烦一点。建议先把前面的key稳稳拿到手,再去啃最后一个。
备考建议
- 工具熟练度——sqlmap、Burp、蚁剑/冰蝎、nmap必须熟练,别到时候工具都不会用
- 命令行——常用命令背下来,考前多敲几遍
- 综合题练习——找靶场练练综合题的思路,熟悉”信息收集→找入口→拿shell→提权”这个流程
- 不要裸考选择题——虽然不难,但60%的正确率是硬门槛
总结
CISP-PTE没有想象中那么难,4小时时间很充足。关键是别紧张、别漏题、工具提前熟悉、命令记牢。
综合题的前面两个key一般不难,先把能拿的拿了,再去啃难题。第一个key差点没拿到的经历告诉我:开考先花几分钟熟悉环境,别急着做题。
祝各位顺利拿证。
