- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 565664 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 174922
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
8 F6 T5 t8 ?, j7 y9 E1 H# g0 z3 q2019--国赛--第一次参加线上赛的自己的整理
8 F2 a. O1 {1 |misc第一题:签到; Z( k/ U! e# y- p
* H! e. q2 b0 B- _% E9 Y; f) I
打开压缩包,发现一个exe文件和一个txt,要三个人一起站到摄像机,然后等软件识别,就出flag了
7 u$ r: p- i0 c( }* M# w& l) p2 o/ ]; M4 V9 @4 ^/ F. R2 G2 l# t
但是我发现,你拿手机放一张照片(有三个人或比三人多)上去也可以出flag,所以推测出,该软件是甄别像素点来进行识别的1 \7 @, W2 i" Q8 v: z; I; @" u
! q- k* A' G2 tmisc第二题:saleae7 o0 ~) W1 n8 H- W% W+ I
* ~ ]* Y" g# Z" p" t( V8 p( K5 Q
下载压缩包,得到一个.logic的程序,都是新东西,没人知道这是用什么软件来打开的,我发现这个特别考百度能力(捂脸)就是需要logicdata软件
3 w% U8 a* C, Q
9 t2 F. E# [* K: M9 d0 [7 {下载后,发现其中给的是波形6 b$ Q- @& N1 D/ u8 c, ] r
9 t/ g4 K4 Z& W* K$ ]/ r然后去百度,发现这个软件是与芯片的输入输出有关,(后面是可以利用旁边的软件来读取flag的)0 w/ G( U }( g1 g
# ]! l( U; W" n6 r
当时的我们没发现这个好办法,只能是0101010101的将flag读出来,然后进行转换成字符串
; i5 m) Q2 X# ~8 `7 n# Y$ n5 m( d" x6 s; @: Z, P
misc第三题:24C
. q" y' W3 ~6 i x5 z; q1 e( D
! o) B* [/ s* u h7 q* n# \与第二题类似,但是需要一点脑洞,就是记得改变它的读取顺序就好了6 G2 g% ~, d1 X- O S u
0 j5 ?/ ]0 {# I4 b$ |+ _+ G% l; |
crypto第一题:puzzle
* x. b- L9 G) Q: X: Y( f9 m- s2 }4 R6 |$ Y& l8 v
首先是给了一个网站,心想还是不是web+密码,那就有点…舒(zi)适(nue)了吧
! e& w: x4 a6 U$ ]5 e
h! U9 W; ?. d& s9 o" U让我深深的感受到数学的重要性,三重积分还没学的我,简直看的如痴如醉,第一题的素数来找规律,让我懵逼好久,这是什么题哦5 l! q6 v' x$ a- F' W: Q! h% f0 Z# s
. m3 ^. H' y- U) h5 B2 m所有的一切都是从0开始的感觉,于是就开启了自学之旅
8 @! G, y, v5 o$ j" w. b! m8 `1 |9 U+ N
提示一下:1、question0 记得化简运算,当然网上也有计算器(当时死算到无奈,后面还错了)
$ [, j9 d0 U' F2 L# k
9 w# e: B1 I0 V8 m 2、question1就是分组找规律,与素数有关, k! x9 h2 Q9 l
% Q! Y6 n. v; w% r1 s 3、question2是做的最舒服的一道题,简简单单的高数上的计算4 W5 P$ q9 E S+ v; v
. c& t2 n& o* j: U 4、question4是高中的知识,不过用一下大学的思想就就是大物的东西了,记住公式就没啥大问题了4 ^+ @ e6 E3 M( u9 S0 A
: t) Q3 g! ~9 A W/ d5 A
5、question5是三重积分,与二重积分类似,具体自己去算
Y1 u; l- r0 [" p$ g9 ~+ ]3 r1
7 T. b& l$ s2 U8 A; ` u0 f21 F) S, |" ?; R& C* i+ q0 ]( `5 u
3# n C$ S" [" d7 `. m) \ U4 Z
4 v% I6 c4 k: X' C1 a7 G' I
5
$ E+ e$ p. i7 S" ~60 l+ S" \# L2 l: l
7! t8 y' V6 _5 ~: _
总而言之,这一道题就是叫你好好的去学习高数,一定要认认真真学习高数
' a' W, ]4 l# K0 Z9 s
' P4 Y' i" a9 l3 O# F0 N: U. pmisc第3题:useasp. s! `7 U& x- Z7 \0 U
2 d( ~& U s' ^4 M5 {2 H
鬼知道这是东西哦,不过经过昨天的一道题发现,继续使用那个logicdata的软件,就可以了
7 v+ _9 J4 P- C! Z9 r- T1 U+ F# c. ~/ R1 ?/ q% {
首先,将文件拖入软件中,然后果然出现了波形2 s; g5 z/ D. r* y1 V0 D
, s' I* H& y; r6 e, d6 m9 t% L
昨天那道题,是对照着题目一道一道念的,010101010101来着,结果,今天发现了一个神奇的地方,在logicdata的右部分中间,可以发现analyzers右边的加号,点进去,有个SPI,根据芯片的一些特性,确定时间线,MOSI和MISO的行,点击确定,就可以得到一个特别长的“flag”% C9 I5 u. Q L# t" J& ^
3 V9 z( u0 t# [+ u/ \' J( m很可惜,这是个陷阱,就是假的flag,flag{you-know-it-can-not-be-such-easy}1 s- I9 r. {6 ^; \/ ?, c( f9 t9 ?
" v+ f* ^% A+ V3 p+ k# s6 t于是我们进行了多种尝试,利用这个软件其他的一些工具进行解码,结果一无所获,但是,后来我们决定修改参数,因为之前的配置是可以得出flag的,于是猜测要更改SPI的某个特殊点。" X% u7 e& z! ], {! } p
3 Y, M( S; t9 L, s; s+ B1 F- _更改SPI的某个特殊点后,进行一个对照,发现只有将setting中最后的一个参数,改成high值,原屏幕的右下角就出现了flag。7 K# O: y3 ^9 |6 U9 W4 ]9 K
. ^* t- R. _, ^$ J5 r
web第一题
, T- i2 m S# D7 g4 g8 e
5 g+ {$ i _" j! d' JJust so so* B0 C( d) i1 I, Q
- ^ u5 B; r& i( L5 c
开始时,用伪协议拿到源码,然后就是反序列化利用了1 A" x5 K, Z! u5 k8 ~: T3 d2 a5 k; G
3 |' b- M0 C' C; K3 y( |<?php index.php error_reporting(0); $file = $_GET["file"]; $payload = $_GET["payload"]; if(!isset($file)){ echo 'Missing parameter'.'
- o2 l, x' k% ^8 d8 e' j9 n'; } if(preg_match("/flag/",$file)){ die('hack attacked!!!'); } @include($file); if(isset($payload)){ $url = parse_url($_SERVER['REQUEST_URI']); parse_str($url['query'],$query); foreach($query as $value){ if (preg_match("/flag/",$value)) { die('stop hacking!'); exit(); } } $payload = unserialize($payload); }else{ echo "Missing parameters"; } ?> hint.php <?php class Handle{ private $handle; public function __wakeup(){ foreach(get_object_vars($this) as $k => $v) { $this->$k = null; } echo "Waking up\n"; } public function __construct($handle) { $this->handle = $handle; } public function __destruct(){ $this->handle->getFlag(); } }
7 B/ t/ t- a; a% l) `( Aclass Flag{2 F$ z9 ~7 {5 C( H5 j- p! L
public $file;
5 y' q6 @* z& f/ ?& S4 n$ K- kpublic $token;% B0 z) A' _9 A. A. {9 m |* K
public $token_flag;' B1 E E. k; L' j$ u/ _" x
5 p5 n+ y6 @" }4 f. kfunction __construct($file){
; r' y, Y; p, v$ x y $this->file = $file;
/ h8 I& e' |( {; n8 A0 z, h $this->token_flag = $this->token = md5(rand(1,10000));
: G( d" n3 [, V8 J2 g9 s' a5 r}. z! ~! Y( r. u, u
8 p1 K# h& v- d; u# d% npublic function getFlag(){
: {' X" \- \7 @: h $this->token_flag = md5(rand(1,10000));& x$ [, A6 ?. k, m: d
if($this->token === $this->token_flag)
6 U: B- d; V5 X& l {
$ M% y" g* }8 b$ L5 B! d if(isset($this->file)){
; b1 d' C& N( V3 h9 _% r' `1 N echo @highlight_file($this->file,true); - l( N+ F2 K+ d+ t6 }
}
" ]6 P3 `9 t$ h% G }% E' X* W! _+ a/ B9 U( O! \/ p y
}+ U; w7 `; a) @8 ^2 Y3 P
19 i$ H9 d7 X1 }' F5 T
2( H4 j6 w0 |7 s" e: W, @0 O, X+ a- _
3
8 d X/ J4 G) d' A$ b( [ \ o9 B5 C4
/ L# L% J& ]9 i5 t& A52 w# J6 d9 v% Q6 I* b% V
6! x! W+ |* S. x0 e. @7 Z7 R
7+ z3 }( q0 j% e
8* i2 @4 s% K4 G2 t' w6 g+ j
9* ~: D! H7 f) Y, ?8 B( p) |2 C2 p2 w
10
$ a& Q" u8 x" U Q: R, ?112 L% u/ Q. y$ m$ I( k6 X; z$ O# D! ?
12( B o+ Y1 i* E. M9 X1 i: H/ P
13
% c7 G5 O) L8 ^3 @: f1 L. n14
- I1 X7 e8 k: o$ J% L# f}
3 }+ D& n' E7 s& p?> v2 F$ d2 O) @. z$ d
大佬说: 可以看到Handle类有个__destruct函数,该函数可以触发getFlag函数,但是__wakeup函数会将所有东西清空,这里改下属性个数就能绕过,参考SugerCRM漏洞,然后getFlag函数的条件可以用指针绕过,以前安恒的月赛也考过,最后flag的匹配可以利用parse_url漏洞,三个斜杠就能绕过了! b Y9 W+ F J7 V4 a
exp- c4 f& h) R; o7 @2 |1 U% L
! K9 A! y5 j$ i: M+ p& JView Code+ X4 l4 n: {2 y1 `1 e' D
! l0 q# b9 s# P! M7 [- Q% H
8 i8 N' V) s+ m2 l8 E
( o/ s! u: R3 j: P4 ~( _https://xi4or0uji.github.io/2019/04/22/2019-4-22-2019-全国大学生信息安全竞赛-writeup/#more
9 e8 d9 z4 X5 [% D M4 A1 F- C3 E5 F. o) {* y
总结:本次比赛只是做了misc的题,web的题目打的也太少了,要继续加油,多进行php的审计,同时多做一些web题总结经验,下次争取多打几道web题$ |2 q6 d7 R4 f
--------------------- - t* B" B1 {; P4 b# {
作者:Jeff King
1 P S. r# i5 m, c+ Z8 P来源:CSDN
! }% A1 j" g# ^, V1 X; z. b' ]6 Y8 n: X2 r4 L
/ S+ P# `1 I/ o/ e% f1 I
# B8 x4 j3 Z9 ~% ^) ?
|
zan
|