博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
XJNU-CTF 2018
阅读量:6660 次
发布时间:2019-06-25

本文共 1035 字,大约阅读时间需要 3 分钟。

闲来无事,最近在做CTF题,感觉再不练练手我就废了。

1.本地文件包含+文件上传拿flag

  • 地址题目:

    img_836a385c00d515bbba98c821c3560083.png
    1.png

  • 题目分析:

看到题目,有两种思路:1).利用文件上传拿webshell,然后找到flag; 2).利用文件包含拿webshell,然后找到flag。 目标很明确,思路也有,然后实践操作,结果发现文件上传走不通,然后想利用文件包含漏洞可以读文件,经证实的确可以读取到文件,但是要找flag就比较难了,因为我不知道flag在哪啊!于是就有另一种想法,利用远程文件包含拿webshell,后来经读upload.php源码发现,应该是不能远程文件包含的。那么最后就剩本地文件包含了,正好呢此处可以上传文件,因此先上传一个图片,不过图片内容改为一句话木马,然后包含这个图片,此时图片里面的一句话木马就会被解析执行,这样我们就拿到了webshell.

具体操作如下,正好回顾下基础知识

  • 利用文件包含读本地文件/etc/passwd
img_886be12420ad5f5cdea463500408508b.png
2.png
  • 由于最后知道了flag文件名和路径,这里就顺便演示下,如下:
img_ee15ef94b97a222dc2f430d1a249f2af.png
3.png
  • 读取upload.php文件源码
    读取格式
?file=php://filter/read=convert.base64-encode/resource=文件名
img_d798a02e4f23d818347590c1316d4e64.png
4.png

然后base64解码

img_f3720657f9668c0ca2796ae66abb6308.png
5.png

此时看到upload.php源码,可知文件上传拿webshell是行不通的

  • 同样读取index.php,如下:
img_ebbc5a567328b74f23a24d2c20ec1541.png
6.png

然后base64解码

img_6159267566f76e7c3f6bc582d1c24da1.png
7.png

可以看出,此文件包含是对包含文件参数file是做了正则匹配过滤的。

解题

  • 上传图片zzqsmile.jpg,然后抓包写一句话。
img_6f064b3bba6f258e2dcfb1d45c7154a0.png
8.png
  • 上传成功!
img_1427ba19429c629fa2321a502be31055.png
9.png
  • 然后包含上传的图片upload/zzqsmile.jpg,如下:
img_3177a7b657ad638d57e15d34c014abea.png
10.png
  • ok!下面就可以用菜刀尝试连接了。
img_56dd7cecd700c5b4c62023b130db23a8.png
11.png

nice! 没毛病!

  • 最后就简单了,找flag
img_ea086e7293d4a0122756322b5604d4e5.png
12.png

flag: flag{pHp_Lfi_t0_Be_Shell!} 之前读文件读的就是这个文件。


2.SQL注入拿flag

  • 题目地址:
img_bf4acebfb6211d6c3844e7a90eebc2f6.png
13.png
  • 题目分析: 很明显根据提示信息,此题是道SQL注入的题目,可以看下源码,或者直接可以尝试index.php?id=1
img_076dda1c5cf79fb09c4e8c5bc414cdab.png
14.png
img_0a4c3adf91c559e1b53511f326a15a80.png
15.png

可以发现,此处可能就是注入点,经确认的确存在注入。

  • 下面就是sql注入流程一顿操作,最后得到flag
img_9db5de0847a1b2a9585c5de679af5d90.png
16.png

解题完毕!

转载地址:http://koxto.baihongyu.com/

你可能感兴趣的文章
关于MFC中使用vector的问题
查看>>
SQL总结(三)SQL基本操作
查看>>
android 编译代码注意事项
查看>>
zedboard如何从PL端控制DDR读写(七)
查看>>
愚你相遇,好幸运:遇见你,遇见了最好的自己
查看>>
根据JSON对象动态加载表格--大数据量
查看>>
二进制、十进制、N进制 ○| ̄|_
查看>>
解决JSP页面无法使用EasyUI里面class="easyui-dialog"的问题
查看>>
Git 安装配置及工作流程
查看>>
第二周作业
查看>>
未来的一个要参加蓝桥杯,在这里记录下笔记
查看>>
(转)眼睛保护
查看>>
ARTS打卡计划第6周-REVIEW-超越编码的避免项目失败的软技能
查看>>
卸载linux自带版本JDK
查看>>
【开发技术】java异常的捕获与抛出原则
查看>>
iScroll实现下拉刷新上拉加载
查看>>
phpwind 去除init.phpwind.net统计功能
查看>>
本地分支与远程分支建立关联
查看>>
工作流JBPM_day02:3-预定义的活动1_4-预定义的活动2+在图片上高亮显示正在执行的上活动...
查看>>
洪小瑶学iOS-UINavigationController
查看>>