WeChall CTF平台20题wp(一)

admin 2022年4月16日03:58:26WeChall CTF平台20题wp(一)已关闭评论91 views字数 16078阅读53分35秒阅读模式

WeChall CTF平台20题wp(一)

CTF平台地址:https://www.wechall.net/challs

以下题目标题组成:

[Score] [Title] [Author]

eg. 1Training: Get Sourced by Gizmore

  • Score:1(题目等级)
  • Title:Training: Get Sourced
  • Author:Gizmore

0x01 1Training: Get Sourced by Gizmore

WeChall CTF平台20题wp(一)

题目意思:

为答案藏在这个页面中

f12

WeChall CTF平台20题wp(一)

password: html_sourcecode

0x02 1Training: Stegano I by Gizmore

WeChall CTF平台20题wp(一)

题目意思为:这是我认为最基础的图片隐写

下载下来一个.bmp文件,查看一下,位图(bmp)

图像又称点阵图或光栅图,它使用我们称为像素(象素,Pixel)的一格一格的小点来描述图像。计算机屏幕其实就是一张包含大量像素点的网格。当我们把位图放大时,每一个像素小点看上去就像是一个个马赛克色块。

WeChall CTF平台20题wp(一)

放到win的记事本中

WeChall CTF平台20题wp(一)
passwd:steganoI

0x03 1Training: Crypto - Caesar I by Gizmore

WeChall CTF平台20题wp(一)

根据题目提示Caesar-凯撒

凯撒密码(移位密码):移位密码是一种古典密码,实际上是替换密码的一个特例

密文:

PDA MQEYG XNKSJ BKT FQILO KRAN PDA HWVU ZKC KB YWAOWN WJZ UKQN QJEMQA OKHQPEKJ EO ZCCCHJHOXNXL

凯撒密码在线解密网站:
https://www.qqxiuzi.cn/bianma/kaisamima.php

WeChall CTF平台20题wp(一)

明文:

THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG OF CAESAR AND YOUR UNIQUE SOLUTION IS DGGGLNLSBRBP

0x04 1Training: WWW-Robots by Gizmore

WeChall CTF平台20题wp(一)

题目的意思为:

我们需要去学习Robots,网络爬虫使用 robots.txt 文件来检查是否允许他们对您的网站或仅部分网站进行爬网和索引。有时这些文件会显示目录结构,而不是保护内容不被抓取。

看到这个题目没有输入框,点进让我们看的网站

https://en.wikipedia.org/wiki/Robots_exclusion_standard

WeChall CTF平台20题wp(一)

我们根据维基百科了解到(不看题目也有解释)robots.txt每个网站都有,robots.txt是一个协议,robots.txt是搜索引擎中访问网站的时候要查看的第一个文件,robots.txt文件告诉爬虫程序在服务器上什么文件是可以被查看的。

WeChall CTF平台20题wp(一)

访问即可

WeChall CTF平台20题wp(一)

0x05 1Training: ASCII by Gizmore

WeChall CTF平台20题wp(一)

题目意思大致为:

在这个电脑中,你只能用数字,我们需要去解密下面的信息

密文:

84, 104, 101, 32, 115, 111, 108, 117, 116, 105, 111, 110, 32, 105, 115, 58, 32, 100, 101, 114, 108, 103, 110, 103, 102, 109, 108, 99, 114

解密网站:
https://www.qqxiuzi.cn/bianma/ascii.htm

WeChall CTF平台20题wp(一)

The solution is: derlgngfmlcr

0x06 1Encodings: URL by Gizmore

WeChall CTF平台20题wp(一)

题目意思:

你的任务就是去解码,一看就是url加密

明文:

%59%69%70%70%65%68%21%20%59%6F%75%72%20%55%52%4C%20%69%73%20%63%68%61%6C%6C%65%6E%67%65%2F%74%72%61%69%6E%69%6E%67%2F%65%6E%63%6F%64%69%6E%67%73%2F%75%72%6C%2F%73%61%77%5F%6C%6F%74%69%6F%6E%2E%70%68%70%3F%70%3D%63%67%6C%72%61%62%70%6E%70%61%73%61%26%63%69%64%3D%35%32%23%70%61%73%73%77%6F%72%64%3D%66%69%62%72%65%5F%6F%70%74%69%63%73%20%56%65%72%79%20%77%65%6C%6C%20%64%6F%6E%65%21

解密网站:
http://www.hiencode.com/url.html

密文:

WeChall CTF平台20题wp(一)

答案

Yippeh! Your URL is challenge/training/encodings/url/saw_lotion.php?p=cglrabpnpasa&cid=52#password=fibre_optics Very well done!

0x07 2Prime Factory by ch0wch0w

WeChall CTF平台20题wp(一)

题目意思:

你的任务很简单:

找出 100 万以上的前两个素数,它们的单独数字和也是素数。

以 23 为例,它是一个素数,其数字和 5 也是素数。

解决方案是两个数字的连接,

例如:如果第一个数字是 1,234,567

,第二个是 8,765,432,则

您的解决方案是 12345678765432

思路:只要找出1000000+的随便两个素数并且每个位加起来也是素数的两个素数拼在一起就是result

随便写了个比较啰嗦的C代码

int change(int n){
int m = 0;
for (m = 2; m < n; m++) {
if (n % m == 0){
return 0;
}
}
return n;
}
int change2(n){
int n2 = n;
int q = 0;
int sum = 0;
for (q = 0; q < 7; q++) {
sum = sum + n%10;
n = n/10;
}
int a = change(sum);
if (a != 0){
return n2;
}
return 0;
}
int main(){
int i = 0;
int r = 0;
for (i = 1000000; i < 1000500; i++) {
int j = change(i);
if (j != 0){
r = change2(j);
if (r != 0){
printf("%d\n",r);
}
}
}
}

WeChall CTF平台20题wp(一)

0x08 2Training: Encodings I by Gizmore

WeChall CTF平台20题wp(一)

题目意思:

我们从一个挑战者那里截获了这条消息,也许你可以找出他们在说什么。

为了帮助您取得进展,我编写了一个名为JPK的小型 Java 应用程序。

注意:该消息很可能是英文的。

密文:

10101001101000110100111100110100

00011101001100101111100011101000

10000011010011110011010000001101

11010110111000101101001111010001

00000110010111011101100011110111

11100100110010111001000100000110

00011110011110001111010011101001

01011100100000101100111011111110

10111100100100000111000011000011

11001111100111110111110111111100

10110010001000001101001111001101

00000110010111000011110011111100

11110011111010011000011110010111

0100110010111100100101110

我们下载他提供的jar工具

WeChall CTF平台20题wp(一)

从帮助里找到这么一条

WeChall CTF平台20题wp(一)

WeChall CTF平台20题wp(一)

每行8个还多出来一个,那就每行7个,因为可以7位或8位二进制转ASCII

WeChall CTF平台20题wp(一)

WeChall CTF平台20题wp(一)

WeChall CTF平台20题wp(一)

This text is 7-bit encoded ascii. Your password is easystarter.

0x09 2Training: Programming 1 by Gizmore

WeChall CTF平台20题wp(一)

题目意思:

当您访问此链接时,您会收到一条消息。

将相同的消息提交回 https://www.wechall.net/challenge/training/programming1/index.php?answer=the_message

您的时间限制是 1.337 秒

点开this page为

WeChall CTF平台20题wp(一)

WeChall CTF平台20题wp(一)

可以看到为动态码

python实现

import urllib.request
import http.cookiejar
import webbrowser
url1 = "http://www.wechall.net/challenge/training/programming1/index.php?action=request"
url2 = 'http://www.wechall.net/challenge/training/programming1/index.php?answer='
header = {}
req = urllib.request.Request(url1,headers = header)
req.add_header('Cookie','WC=16296850-61988-XXXXXXXXXXXXXXXXX')
message = urllib.request.urlopen(req).read().decode('utf-8')
url2 = url2+message
webbrowser.open(url2)

0x10 2Training: Regex by Gizmore

WeChall CTF平台20题wp(一)

题目意思:

您在本次挑战中的目标是学习正则表达式语法。

正则表达式是您掌握编程的强大工具,因此您至少应该能够解决这个挑战!

每个任务的解决方案总是尽可能最短的正则表达式模式。

另请注意,您也必须在模式中提交分隔符。示例模式:/joe/i,分隔符必须是/

Level 1

你的第一课很简单:提交匹配一个空字符串的正则表达式,并且只有一个空字符串。

条件:1、一个空字符串 2、只有一个

WeChall CTF平台20题wp(一)

WeChall CTF平台20题wp(一)

答案为:/^$/

Level 2

匹配”wechall”,/^wechall$/

Level 3

WeChall CTF平台20题wp(一)

题目意思:

匹配静态字符串不是正则表达式的主要目标。

您的下一个任务是提交与某些图像的有效文件名匹配的表达式。

您的模式应匹配名称为 wechall.ext 或 wechall4.ext 和有效图像扩展名的所有图像。

有效的图像扩展名是 .jpg、.gif、.tiff、.bmp 和 .png。

以下是一些有效文件名的示例:wechall4.tiff、wechall.png、wechall4.jpg、wechall.bmp

/^wechall4?.(?:jpg|gif|tiff|bmp|png)$/

Level 4

WeChall CTF平台20题wp(一)

题目意思:

很高兴我们现在有有效的图像,但是您能否也捕获文件名,不带扩展名?

例如: wechall4.jpg 现在应该在您的模式中捕获/返回 wechall4。

需要对文件名添加捕获分组

/^(wechall4?).(?:jpg|gif|tiff|bmp|png)$/

0x11 2Training: PHP LFI by Gizmore

WeChall CTF平台20题wp(一)

题目意思:

您的任务是利用此代码,该代码显然存在LFI漏洞:

GeSHi`ed PHP code
$filename = 'pages/'.(isset($_GET["file"])?$_GET["file"]:"welcome").'.html';
include $filename;

../solution.php 中有很多重要的东西,所以请包含并执行此文件。

下面是一些正在运行的脚本示例(在下面的框中):

index.php?file=welcome

index.php?file=news

index.php?file=forums

出于调试目的,可以再次查看整个源代码,也作为高亮版本。

高亮版本:
https://www.wechall.net/challenge/training/php/lfi/up/index.php?highlight=christmas
源代码:
https://www.wechall.net/challenge/training/php/lfi/up/index.php?show=source

LFI漏洞又称为本地文件包含漏洞

https://www.wechall.net/challenge/training/php/lfi/up/index.php?file=news

isset() 函数用于检测变量是否已设置并且非 NULL

WeChall CTF平台20题wp(一)

看到地址

https://www.wechall.net/challenge/training/php/lfi/solution.php

判断出solution.php前应该是../../

因为后面有一个.html,我们可以用%00进行截断

最终结果:

http://www.wechall.net/challenge/training/php/lfi/up/index.php?file=../../solution.php%00

0x12 2PHP 0817 by Gizmore

WeChall CTF平台20题wp(一)

题目意思:

我为我的动态网页编写了另一个包含系统,但它似乎容易受到 LFI 的攻击。

这是代码:

<?php
if (isset($_GET['which']))
{
$which = $_GET['which'];
switch ($which)
{
case 0:
case 1:
case 2:
require_once $which.'.php';
break;
default:
echo GWF_HTML::error('PHP-0817', 'Hacker NoNoNo!', false);
break;
}
}
?>

您的任务是包含solution.php。

以下是正在运行的脚本:

News

Forum

Guestbook

目标是包含solution.php文件

https://www.wechall.net/challenge/php0817/solution.php

WeChall CTF平台20题wp(一)

当非数字开头的字符串与数字 0 进行比较时,结果返回true

http://www.wechall.net/challenge/php0817/index.php?which=solution

0x13 2Training: Crypto - Transposition I by Gizmore

WeChall CTF平台20题wp(一)
题目意思:
看起来简单的替换密码对你来说太容易了。
根据我自己的经验,我可以看出转置密码更难攻击。
然而,在这个训练挑战中,你应该没有太多问题来揭示明文。
密文:
oWdnreuf.lY uoc nar ae dht eemssga eaw yebttrew eh nht eelttre sra enic roertco drre . Ihtni koy uowlu dilekt oes eoyrup sawsro don:wn lesoihofpc.p

可以很快发现每两个字母进行换位,C语言实现一下

int main()
{
char arr[] = "oWdnreuf.lY uoc nar ae dht eemssga eaw yebttrew eh nht eelttre sra enic roertco drre . Ihtni koy uowlu dilekt oes eoyrup sawsro don:wn lesoihofpc.p";
int sz = sizeof(arr)/sizeof(arr[0]);
//printf("%d\n",sz);
char tmp = '0';
int i = 0;
while(i<sz-1)
{
tmp = arr[i];
arr[i] = arr[i+1];
arr[i+1] = tmp;
i = i+2;
}
for (i = 0; i < sz; i++) {
printf("%c",arr[i]);
}
return 0;
}

WeChall CTF平台20题wp(一)

明文:

Wonderful. You can read the message way better when the letters are in correct order. I think you would like to see your password now: neloshifocpp.

0x14 2Training: Crypto - Substitution I by Gizmore

WeChall CTF平台20题wp(一)

题目意思:

哦,亲爱的,我猜你已经破解了两个凯撒密码......

这个更难。虽然简单的替换很容易破解...

再次将字符限制为A-Z范围内.但我想我可以再想出256个版本。

密文:

UQ ZOT KXPJROZQ RND QNC BKE MTKD ZOJS PQ HMJTED J KP JPGMTSSTD LTMQ ITXX DNET QNCM SNXCZJNE ATQ JS TGTSRENXSPPX ZOJS XJZZXT BOKXXTERT IKS ENZ ZNN OKMD IKS JZ

WeChall CTF平台20题wp(一)

quipqiup可以破解简单的替换

明文:

BY THE ALMIGHTY GOD YOU CAN READ THIS MY FRIEND I AM IMPRESSED VERY WELL DONE YOUR SOLUTION KEY IS EPESGNOLSMML THIS LITTLE CHALLENGE WAS NOT TOO HARD WAS IT

0x15 2Training: Crypto - Caesar II by Gizmore

WeChall CTF平台20题wp(一)

题目意思:

caesar 的最大问题是它不允许使用数字或其他字符。

我已经解决了这个问题,现在我可以在明文中使用任何 ascii 字符。

键空间也从 26 个增加到 128 个。\o/

首先根据题目知道为凯撒密码:

WeChall CTF平台20题wp(一)

解题思路:将十六进制转换成十进制,再将十进制转换成ascii

tr 命令用于转换或删除文件中的字符

echo "0C 34 34 29 20 2F 34 27 71 20 3E 34 3A 20 38 34
31 3B 2A 29 20 34 33 2A 20 32 34 37 2A 20 28 2D
26 31 31 2A 33 2C 2A 20 2E 33 20 3E 34 3A 37 20
2F 34 3A 37 33 2A 3E 73 20 19 2D 2E 38 20 34 33
2A 20 3C 26 38 20 2B 26 2E 37 31 3E 20 2A 26 38
3E 20 39 34 20 28 37 26 28 30 73 20 1C 26 38 33
6C 39 20 2E 39 04 20 76 77 7D 20 30 2A 3E 38 20
2E 38 20 26 20 36 3A 2E 39 2A 20 38 32 26 31 31
20 30 2A 3E 38 35 26 28 2A 71 20 38 34 20 2E 39
20 38 2D 34 3A 31 29 33 6C 39 20 2D 26 3B 2A 20
39 26 30 2A 33 20 3E 34 3A 20 39 34 34 20 31 34
33 2C 20 39 34 20 29 2A 28 37 3E 35 39 20 39 2D
2E 38 20 32 2A 38 38 26 2C 2A 73 20 1C 2A 31 31
20 29 34 33 2A 71 20 3E 34 3A 37 20 38 34 31 3A
39 2E 34 33 20 2E 38 20 2A 2C 27 27 28 2A 38 2C
35 29 31 38 73 " | tr '\n' ' '

WeChall CTF平台20题wp(一)

获得目标密文:
0C 34 34 29 20 2F 34 27 71 20 3E 34 3A 20 38 34 31 3B 2A 29 20 34 33 2A 20 32 34 37 2A 20 28 2D 26 31 31 2A 33 2C 2A 20 2E 33 20 3E 34 3A 37 20 2F 34 3A 37 33 2A 3E 73 20 19 2D 2E 38 20 34 33 2A 20 3C 26 38 20 2B 26 2E 37 31 3E 20 2A 26 38 3E 20 39 34 20 28 37 26 28 30 73 20 1C 26 38 33 6C 39 20 2E 39 04 20 76 77 7D 20 30 2A 3E 38 20 2E 38 20 26 20 36 3A 2E 39 2A 20 38 32 26 31 31 20 30 2A 3E 38 35 26 28 2A 71 20 38 34 20 2E 39 20 38 2D 34 3A 31 29 33 6C 39 20 2D 26 3B 2A 20 39 26 30 2A 33 20 3E 34 3A 20 39 34 34 20 31 34 33 2C 20 39 34 20 29 2A 28 37 3E 35 39 20 39 2D 2E 38 20 32 2A 38 38 26 2C 2A 73 20 1C 2A 31 31 20 29 34 33 2A 71 20 3E 34 3A 37 20

Hex = "0C 34 34 29 20 2F 34 27 71 20 3E 34 3A 20 38 34 31 3B 2A 29 20 34 33 2A 20 32 34 37 2A 20 28 2D 26 31 31 2A 33 2C 2A 20 2E 33 20 3E 34 3A 37 20 2F 34 3A 37 33 2A 3E 73 20 19 2D 2E 38 20 34 33 2A 20 3C 26 38 20 2B 26 2E 37 31 3E 20 2A 26 38 3E 20 39 34 20 28 37 26 28 30 73 20 1C 26 38 33 6C 39 20 2E 39 04 20 76 77 7D 20 30 2A 3E 38 20 2E 38 20 26 20 36 3A 2E 39 2A 20 38 32 26 31 31 20 30 2A 3E 38 35 26 28 2A 71 20 38 34 20 2E 39 20 38 2D 34 3A 31 29 33 6C 39 20 2D 26 3B 2A 20 39 26 30 2A 33 20 3E 34 3A 20 39 34 34 20 31 34 33 2C 20 39 34 20 29 2A 28 37 3E 35 39 20 39 2D 2E 38 20 32 2A 38 38 26 2C 2A 73 20 1C 2A 31 31 20 29 34 33 2A 71 20 3E 34 3A 37 20"
Hex = Hex.split()
for shift in range(127):
for one in Hex:
Dec = int(one, 16)+shift+1
print(chr(Dec % 128), end='')
print()
print(shift+1)
print()

WeChall CTF平台20题wp(一)

Good[job,[you[solved[one[more[challenge[in[your[journey.[This[one[was[fairly[easy[to[crack.[Wasn't[it?[128[keys[is[a[quite[small[keyspace,[so[it[shouldn't[have[taken[you[too[long[to[decrypt[this[message.[Well[done,[your[solution[is[egbbcesgpdls.

替换 "}"

echo "Good[job,[you[solved[one[more[challenge[in[your[journey.[This[one[was[fairly[easy[to[crack.[Wasn't[it?[128[keys[is[a[quite[small[keyspace,[so[it[shouldn't[have[taken[you[too[long[to[decrypt[this[message.[Well[done,[your[solution[is[egbbcesgpdls." | tr '[' ' '

WeChall CTF平台20题wp(一)

0x16 2 Training: Crypto - Digraphs by Gizmore

WeChall CTF平台20题wp(一)

题目意思:

这次我使用有向图加密方案将一个字母加密为两个字符。

只需 26 个不同的字母,我就可以加密多达 26*26 个不同的字符。

另一个大问题是共享密钥,但密码很容易被破解。

消息使用当前语言,以正确的大小写和标点符号书写。没有换行符。

WeChall CTF平台20题wp(一)
由此得出每两位对应一个字母或字符

tqlgwdfpsgunhdufhwunhdzmlgwdlapa vxlguf aclsdhsgcvlzhdlsac hdgnzmla kplslalaunfpls laufdhdhlslalaldufhwhwcvpa djunla wdlghd hdlglg aczmldldzmdhufhwhd lszmhdgnlssghe xsunla zmhdhv djlshwhwhe fplglgac dblgejpa jawdhdlssg hdgnzmla hnlscvxslgsgac unla lalghwufhdzmlgwdzo ejldejldlgejhwejwdldlshwpa

查看规律,因为有符号,猜测符号在最后一位,pa应该对应符号

tqlgwdfpsgunhdufhwunhdzmlgwdlapa
vxlguf aclsdhsgcvlzhdlsac hdgnzmla kplslalaunfpls laufdhdhlslalaldufhwhwcvpa
djunla wdlghd hdlglg aczmldldzmdhufhwhd lszmhdgnlssghe xsunla zmhdhv djlshwhwhe fplglgac dblgejpa
jawdhdlssg hdgnzmla hnlscvxslgsgac unla lalghwufhdzmlgwdzo ejldejldlgejhwejwdldlshwpa

pa之前的字母有30个,应该对应一个单词,tqlgwdfpsgunhdufhwunhdzmlgwdla

WeChall CTF平台20题wp(一)

大胆猜测tqlgwdfpsgunhdufhwunhdzmlgwdla在此语境下应为congratulations

'tq':'c',
'lg':'o',
'wd':'n',
'fp':'g',
'sg':'r',
'un':'a',
'hd':'t',
'uf':'u',
'hw':'l',
'un':'a',
'hd':'t',
'zm':'i',
'lg':'o',
'wd':'n',
'la':'s',
'pa':'.'

```
a = "tqlgwdfpsgunhdufhwunhdzmlgwdlapa vxlguf aclsdhsgcvlzhdlsac hdgnzmla kplslalaunfpls laufdhdhlslalaldufhwhwcvpa djunla wdlghd hdlglg aczmldldzmdhufhwhd lszmhdgnlssghe xsunla zmhdhv djlshwhwhe fplglgac dblgejpa jawdhdlssg hdgnzmla hnlscvxslgsgac unla lalghwufhdzmlgwdzo ejldejldlgejhwejwdldlshwpa"
b = a.split()
dic = {'tq':'C','lg':'o','wd':'n','fp':'g','sg':'r','un':'a','hd':'t','uf':'u','hw':'l','un':'a','hd':'t','zm':'i','lg':'o','wd':'n','la':'s','pa':'.'}
for i in b:
c =[]
for j in range(0,len(i),2):
c.append(i[j:j+2])
print(c)

d = []
for k in c:
    if k in dic:
        d.append(dic[k])
    else:
        d.append('_')
txt = ''.join(d)
print(txt)
print()

```

WeChall CTF平台20题wp(一)

根据“congratulations.” 可以推测出其他单词

_ou - You
t_is - this
__ssag_ - message
su___ss_ull_. - successfully
goo_ - good

得到新的key

'vx' : 'Y'
'gn' : 'h'
'kp' : 'M'
'ls' : 'e'
'dh' : 'c'
'pa' : ','//猜测
'ac' : 'd'

WeChall CTF平台20题wp(一)

迭代进行

'cv' : 'y'
'lz' : 'p'
'ld' : 'f'
'dj' : 'w'
'hv' : 's'
'he' : ','//猜测

WeChall CTF平台20题wp(一)

'hn' : 'k'
'xs' : 'b'
'db' : 'j'
'ej' : 'b'

WeChall CTF平台20题wp(一)

答案

bfbfoblbnfel

0x17 2 Training: MySQL I by Gizmore

WeChall CTF平台20题wp(一)

题目意思:

这是经典的mysql注入挑战。

您的任务很简单:以管理员身份登录。

再次为您提供源代码,也作为突出显示的版本。

查看题目已经给的代码

WeChall CTF平台20题wp(一)

SELECT * FROM users WHERE username='$username' AND password='$password'

答案

admin'#

0x18 2 Training: MySQL II by Gizmore

WeChall CTF平台20题wp(一)

题目意思:

这与MySQL1相同,但您必须想出更高级的注入来欺骗此身份验证。

你的任务又来了:以管理员身份登录。

再次为您提供源代码,也作为突出显示的版本。

WeChall CTF平台20题wp(一)

<?php
/* TABLE STRUCTURE
CREATE TABLE IF NOT EXISTS users (
userid INT(11) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
password CHAR(32) CHARACTER SET ascii COLLATE ascii_bin NOT NULL
) ENGINE=myISAM;
*/

其中有三个参数

username password进行了分开验证

SELECT * FROM users WHERE username='$username'

构造新语句

SELECT * FROM users WHERE username='admin1' union select 1,'admin',md5('password');#

让下面的判断语句以为搜到的数据为“1,'admin',md5('password')”

password处输入password

答案

admin1' union select 1,'admin',md5('password');#

0x19 2 Training: Register Globals by Gizmore

WeChall CTF平台20题wp(一)

题目意思:

这个挑战是旧 PHP 时代的遗留物,默认情况下已启用全局寄存器,这通常会导致安全问题。

同样,您的工作是以管理员身份登录,并为您提供源代码以及突出显示的版本。

这是易受攻击的脚本的链接。

我还设置了一个测试帐户:test:test

WeChall CTF平台20题wp(一)

参考链接:
http://www.chiange.com/php%e4%bd%bf%e7%94%a8-register-globals%e5%8f%af%e8%83%bd%e5%bc%95%e5%8f%91%e7%9a%84%e9%97%ae%e9%a2%98/

WeChall CTF平台20题wp(一)

当 register_globals 打开以后,各种变量都被注入代码,例如来自 HTML 表单的请求变量。再加上 PHP 在使用变量之前是无需进行初始化的,这就使得更容易写出不安全的代码。

答案

http://www.wechall.net/challenge/training/php/globals/globals.php?login[0]=admin

0x20 2Training: Math Pyramid by Gizmore

WeChall CTF平台20题wp(一)

题目意思:

这是数学挑战的第一个版本。

您必须为几何函数想出最短的解决方案(9 个字符或更少)。

故事是这样的:

Pharao momo想要一个基于正方形的金字塔,其中所有八个边的长度都相同“a”。

请用公式支持他计算给定边长的体积。

示例公式:a^3/3sqrt(aa)

符号提示:sqrt()、a^2 等

我在这画了个简单的图

WeChall CTF平台20题wp(一)

a^3/3*sqrt(2) --> a^3/18^0.5 --> 18^-0.5a^3

还是多1个字符,搜索才发现.之前的0可以省略

答案

18^-.5a^3

0x20 2Training: Baconian by Gizmore

WeChall CTF平台20题wp(一)

题目意思

在此培训挑战中,您必须在另一条消息中揭示隐藏的消息。

众所周知,消息是通过培根密码隐藏的。

同样,每个会话的解决方案都会发生变化,并由 12 个随机字符组成。

The Message

BaCoN's cIphEr or THE bacOnIAN CiPHer iS a meThOD oF sTEGaNOGrapHY (a METhoD Of HidIng A sECRet MeSsaGe as OpPOsEd TO a TRUe CiPHeR) dEVIseD BY francis bAcoN. a MessAge Is coNCeALED in THe pRESenTatIoN OF TexT, ratHer thaN iTs coNteNt. tO enCODe A MEsSaGe, eaCh lETter Of THe pLAInText Is rePLAcED By A groUp oF fIvE OF the LettERs 'a' oR 'B'. ThIS RePlaCemEnt is donE acCORDinG to thE alPhABeT of tHe BACOnIAN cIpHeR, sHoWn bElOw. NoTe: A SeCoNd vErSiOn oF BaCoN'S CiPhEr uSeS A UnIqUe cOdE FoR EaCh lEtTeR. iN OtHeR WoRdS, i aNd j eAcH HaS ItS OwN PaTtErN. tHe wRiTeR MuSt mAkE UsE Of tWo dIfFeReNt tYpEfAcEs fOr tHiS CiPhEr. AfTeR PrEpArInG A FaLsE MeSsAgE WiTh tHe sAmE NuMbEr oF LeTtErS As aLl oF ThE As aNd bS In tHe rEaL, sEcReT MeSsAgE, tWo tYpEfAcEs aRe cHoSeN, oNe tO RePrEsEnT As aNd tHe oThEr bS. tHeN EaCh lEtTeR Of tHe fAlSe mEsSaGe mUsT Be pReSeNtEd iN ThE ApPrOpRiAtE TyPeFaCe, AcCoRdInG To wHeThEr iT StAnDs fOr aN A Or a b. To dEcOdE ThE MeSsAgE, tHe rEvErSe mEtHoD Is aPpLiEd. EaCh 'TyPeFaCe 1' LeTtEr iN ThE FaLsE MeSsAgE Is rEpLaCeD WiTh aN A AnD EaCh 'TyPeFaCe 2' LeTtEr iS RePlAcEd wItH A B. tHe bAcOnIaN AlPhAbEt iS ThEn uSeD To rEcOvEr tHe oRiGiNaL MeSsAgE. aNy mEtHoD Of wRiTiNg tHe mEsSaGe tHaT AlLoWs tWo dIsTiNcT RePrEsEnTaTiOnS FoR EaCh cHaRaCtEr cAn bE UsEd fOr tHe bAcOn cIpHeR. bAcOn hImSeLf pRePaReD A BiLiTeRaL AlPhAbEt[2] FoR HaNdWrItTeN CaPiTaL AnD SmAlL LeTtErS WiTh eAcH HaViNg tWo aLtErNaTiVe fOrMs, OnE To bE UsEd aS A AnD ThE OtHeR As b. ThIs wAs pUbLiShEd aS An iLlUsTrAtEd pLaTe iN HiS De aUgMeNtIs sCiEnTiArUm (ThE AdVaNcEmEnT Of lEaRnInG). BeCaUsE AnY MeSsAgE Of tHe rIgHt lEnGtH CaN Be uSeD To cArRy tHe eNcOdInG, tHe sEcReT MeSsAgE Is eFfEcTiVeLy hIdDeN In pLaIn sIgHt. ThE FaLsE MeSsAgE CaN Be oN AnY ToPiC AnD ThUs cAn dIsTrAcT A PeRsOn sEeKiNg tO FiNd tHe rEaL MeSsAgE.

WeChall CTF平台20题wp(一)

法兰西斯·培根另外准备了一种方法,其将大小写分别看作A与B,可用于无法使用不同字体的场合(例如只能处理纯文本时)。但这样比起字体不同更容易被看出来,而且和语言对大小写的要求也不太兼容。

培根密码本质上是将二进制信息通过样式的区别,加在了正常书写之上。培根密码所包含的信息可以和用于承载其的文章完全无关。

通过代码将文本大写转为A,小写转为B

a = "BaCoN's cIphEr or THE bacOnIAN CiPHer iS a meThOD oF sTEGaNOGrapHY (a METhoD Of HidIng A sECRet MeSsaGe as OpPOsEd TO a TRUe CiPHeR) dEVIseD BY francis bAcoN. a MessAge Is coNCeALED in THe pRESenTatIoN OF TexT, ratHer thaN iTs coNteNt. tO enCODe A MEsSaGe, eaCh lETter Of THe pLAInText Is rePLAcED By A groUp oF fIvE OF the LettERs 'a' oR 'B'. ThIS RePlaCemEnt is donE acCORDinG to thE alPhABeT of tHe BACOnIAN cIpHeR, sHoWn bElOw. NoTe: A SeCoNd vErSiOn oF BaCoN'S CiPhEr uSeS A UnIqUe cOdE FoR EaCh lEtTeR. iN OtHeR WoRdS, i aNd j eAcH HaS ItS OwN PaTtErN. tHe wRiTeR MuSt mAkE UsE Of tWo dIfFeReNt tYpEfAcEs fOr tHiS CiPhEr. AfTeR PrEpArInG A FaLsE MeSsAgE WiTh tHe sAmE NuMbEr oF LeTtErS As aLl oF ThE As aNd bS In tHe rEaL, sEcReT MeSsAgE, tWo tYpEfAcEs aRe cHoSeN, oNe tO RePrEsEnT As aNd tHe oThEr bS. tHeN EaCh lEtTeR Of tHe fAlSe mEsSaGe mUsT Be pReSeNtEd iN ThE ApPrOpRiAtE TyPeFaCe, AcCoRdInG To wHeThEr iT StAnDs fOr aN A Or a b. To dEcOdE ThE MeSsAgE, tHe rEvErSe mEtHoD Is aPpLiEd. EaCh 'TyPeFaCe 1' LeTtEr iN ThE FaLsE MeSsAgE Is rEpLaCeD WiTh aN A AnD EaCh 'TyPeFaCe 2' LeTtEr iS RePlAcEd wItH A B. tHe bAcOnIaN AlPhAbEt iS ThEn uSeD To rEcOvEr tHe oRiGiNaL MeSsAgE. aNy mEtHoD Of wRiTiNg tHe mEsSaGe tHaT AlLoWs tWo dIsTiNcT RePrEsEnTaTiOnS FoR EaCh cHaRaCtEr cAn bE UsEd fOr tHe bAcOn cIpHeR. bAcOn hImSeLf pRePaReD A BiLiTeRaL AlPhAbEt[2] FoR HaNdWrItTeN CaPiTaL AnD SmAlL LeTtErS WiTh eAcH HaViNg tWo aLtErNaTiVe fOrMs, OnE To bE UsEd aS A AnD ThE OtHeR As b. ThIs wAs pUbLiShEd aS An iLlUsTrAtEd pLaTe iN HiS De aUgMeNtIs sCiEnTiArUm (ThE AdVaNcEmEnT Of lEaRnInG). BeCaUsE AnY MeSsAgE Of tHe rIgHt lEnGtH CaN Be uSeD To cArRy tHe eNcOdInG, tHe sEcReT MeSsAgE Is eFfEcTiVeLy hIdDeN In pLaIn sIgHt. ThE FaLsE MeSsAgE CaN Be oN AnY ToPiC AnD ThUs cAn dIsTrAcT A PeRsOn sEeKiNg tO FiNd tHe rEaL MeSsAgE."
b = []
A = "A";
B = "B";
for i in a:
if ord(i)>=65 and ord(i)<=90:
b.append(B)
elif ord(i)>=97 and ord(i)<=122:
b.append(A)
else:
pass
print(''.join(b))

WeChall CTF平台20题wp(一)

在线工具
http://www.hiencode.com/baconian.html

WeChall CTF平台20题wp(一)

veryxwellxdonexfellowxhackerxthexsecretxkeywordxisxcghosibhsclixxkvfksujouwkwwurnwvfnfwjksvewvlkxlkjnjvmtmtevlkuvjfknkzeuvuvskkszktnkwvkvsusoevwvjkkzkvkvjwwvsvuvkvjvjosvvjuwkskwvjlfjfjnjflkvlnfkjuskkvfjkkvnkwvwwvuwusvjkzuwwkjktfkstmvjkvnkwkwvwvskkfsskvfnlfkswkkwwvwnvwskxkktjfv

WeChall CTF平台20题wp(一)

利用sublim替换x

答案

cghosibhscli

剩下的题会持续更新

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年4月16日03:58:26
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   WeChall CTF平台20题wp(一)http://cn-sec.com/archives/917350.html