- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 561879 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 173937
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 18
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
& I# F# u; ^. ?4 E F
2019--国赛--第一次参加线上赛的自己的整理' m6 |- N; K3 M& Q5 @% Q* A) V
misc第一题:签到# b8 Y# U4 G1 q1 J" i
- n1 R8 Z$ d, x1 U2 f8 i
打开压缩包,发现一个exe文件和一个txt,要三个人一起站到摄像机,然后等软件识别,就出flag了
! C. P0 f, a! Z m b3 F
# l4 B5 g0 q$ w8 `但是我发现,你拿手机放一张照片(有三个人或比三人多)上去也可以出flag,所以推测出,该软件是甄别像素点来进行识别的
8 g* G$ u: D* J f9 l- S
8 O+ M0 R7 ~5 m! emisc第二题:saleae
5 d. t* G/ f; E% D: e8 Y, {
. [& v k9 b4 V1 \下载压缩包,得到一个.logic的程序,都是新东西,没人知道这是用什么软件来打开的,我发现这个特别考百度能力(捂脸)就是需要logicdata软件
& c" R7 g3 N- n4 o1 C4 D4 A) T* Y% l6 q l1 Q) [
下载后,发现其中给的是波形% l9 K4 j3 g, a$ [
1 F, P1 ] U4 \- s0 J% `3 ]
然后去百度,发现这个软件是与芯片的输入输出有关,(后面是可以利用旁边的软件来读取flag的)
/ a- a) n* e2 d4 F6 M% V* t( T7 n: i; f
; Y G u; C, A& ~; P( Q7 _ u% L当时的我们没发现这个好办法,只能是0101010101的将flag读出来,然后进行转换成字符串
6 \) N/ M: @' v
$ B& E2 [8 T2 D6 U: |0 L9 Pmisc第三题:24C
+ r# D' s" H$ z& ?2 u9 O4 C6 [) J( d$ ^' N! H' m3 v9 L( N, Z
与第二题类似,但是需要一点脑洞,就是记得改变它的读取顺序就好了# F$ q3 c+ P4 _$ m4 T
X2 h& @% N( C& ?: \# k8 A
crypto第一题:puzzle! B6 a( k2 S; u- u' p
/ {: i# y, O5 j1 t: [/ G
首先是给了一个网站,心想还是不是web+密码,那就有点…舒(zi)适(nue)了吧, W, K" Z2 N( V% |& p) x5 v
) ?+ r: U0 a* @. q0 D% E! | L
让我深深的感受到数学的重要性,三重积分还没学的我,简直看的如痴如醉,第一题的素数来找规律,让我懵逼好久,这是什么题哦
3 q: U, A0 U0 e& ?2 ^3 K3 M1 }8 e# J; K; S U4 A
所有的一切都是从0开始的感觉,于是就开启了自学之旅
7 {3 F2 x+ S' p# K
; Q1 C }/ e2 N" Z& W$ W) m6 [" G提示一下:1、question0 记得化简运算,当然网上也有计算器(当时死算到无奈,后面还错了)8 H0 N, y9 d R
. }: L" C) o3 `" l0 U6 s; O) l
2、question1就是分组找规律,与素数有关
+ W5 b- @$ z( w+ M. d, ^. F# R
! }( @4 T& @8 O! l 3、question2是做的最舒服的一道题,简简单单的高数上的计算
* n1 B0 u: [% j, [, p& g
2 m, K# J2 G9 p9 V0 F/ F 4、question4是高中的知识,不过用一下大学的思想就就是大物的东西了,记住公式就没啥大问题了1 B% s* i4 c. `7 {% U
7 f7 `9 S( Q v! c$ w* a7 c
5、question5是三重积分,与二重积分类似,具体自己去算2 ^' c q b( Y! v; J+ n( f9 y+ V
1
9 {( P( N% J/ e5 X- M. B2
* r8 t& }6 B$ D/ U9 [ }; v3- D! P6 c' M' ~) h* _
4
' x0 {; d r3 j: w- e5
' i2 A7 x) K# r+ ~; q6
" ^- I# H1 @1 e. s5 L* `; W+ F7
( H! o- ~+ g2 m/ m2 |/ i8 ~; Q6 q. F总而言之,这一道题就是叫你好好的去学习高数,一定要认认真真学习高数
F. l- l7 s0 P$ q( N5 y
1 F) k+ V2 n1 k* z3 G9 \% \, D, }+ \misc第3题:useasp" {. M* X1 N d) N- R5 S
% G) T0 n" u% A. a
鬼知道这是东西哦,不过经过昨天的一道题发现,继续使用那个logicdata的软件,就可以了4 [; i( s2 [: ]8 Q G
, c$ D5 t. d' M9 u: k8 w4 S
首先,将文件拖入软件中,然后果然出现了波形' O" [" `" ?- A; V0 \
9 O! r/ f# x" G! ~* e% |昨天那道题,是对照着题目一道一道念的,010101010101来着,结果,今天发现了一个神奇的地方,在logicdata的右部分中间,可以发现analyzers右边的加号,点进去,有个SPI,根据芯片的一些特性,确定时间线,MOSI和MISO的行,点击确定,就可以得到一个特别长的“flag”$ k2 Y- j1 k, p
^" x! ^2 m5 }# B2 F/ g* I) p9 y很可惜,这是个陷阱,就是假的flag,flag{you-know-it-can-not-be-such-easy}& L' m& m1 T9 @7 \
( W" X) y' E0 T) K& H' {# t% y1 u
于是我们进行了多种尝试,利用这个软件其他的一些工具进行解码,结果一无所获,但是,后来我们决定修改参数,因为之前的配置是可以得出flag的,于是猜测要更改SPI的某个特殊点。) i5 T2 z& {8 ~) L3 i* H& X. V* A( Z
; D. e# T8 g& t
更改SPI的某个特殊点后,进行一个对照,发现只有将setting中最后的一个参数,改成high值,原屏幕的右下角就出现了flag。& t: n d! O- a3 \/ G* k& Y* W& B
- R, Q6 H8 v) q8 b1 ~" `; B! Q& H
web第一题
# S5 ~, N! R1 t1 Y# G1 Q& z/ D5 Q2 N+ f9 \: k
Just so so
; {1 B4 a( u% N: z
4 t7 h+ N s5 I. t4 T/ o: B" G4 m7 ^开始时,用伪协议拿到源码,然后就是反序列化利用了
1 W) S5 h0 c$ X( P; K4 R0 D0 Y U+ r! Q9 ]1 W; h( J0 ?. i
<?php index.php error_reporting(0); $file = $_GET["file"]; $payload = $_GET["payload"]; if(!isset($file)){ echo 'Missing parameter'.'9 g: y$ S* P2 d
'; } 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(); } }
& W/ j. n2 y' H+ xclass Flag{
$ K5 W4 E1 Y7 m6 j w" xpublic $file;6 v9 @1 E3 Y6 f
public $token;
& k& B+ i: W/ U O% B E' w' Ppublic $token_flag;. ?# [/ y; x2 N/ a' O
, ?. R0 {% z7 U X; @1 K
function __construct($file){ p" Z& V: H0 G+ b2 b
$this->file = $file;
, P& l) i i" i/ h; D: B+ K $this->token_flag = $this->token = md5(rand(1,10000));) U9 y" ?2 Y. z2 q; v4 c
}1 K' b; ~$ _* w+ S
/ {) t4 _( |( S! K4 `7 c# Bpublic function getFlag(){% `) q2 `" J8 I& c. z, D
$this->token_flag = md5(rand(1,10000)); z/ ]' l9 @$ N3 h
if($this->token === $this->token_flag)3 W% T' V7 V: E, X* ?2 b, R3 Z; O% A
{
4 t5 t) s' W. P9 \( l if(isset($this->file)){8 l" B8 p9 |" v' t/ g
echo @highlight_file($this->file,true); / z9 p8 J) ~3 U5 M, A
} * O' n/ r7 E9 C+ e7 |
}: a. g" S- I e
}* q! O6 F6 f& z( z- w) R
1
# w: {" r! p W+ F- I5 Z1 N22 p8 @8 P+ d; O, F" n0 e; o1 x
3; o5 K; @# Z: U9 T' _: I9 w# u$ O
4
1 v: E) o' ^+ H+ b/ G' ?7 U5
! F' Y; g' E9 W3 w! k. `. f. \6
( N7 F8 d( ?4 B, t& g3 U7* S( J9 K% Q1 E- @* Z( f- X
8 n( }$ r5 }; f7 h
9/ X' h" w2 ^4 W0 @: B! S
10( _$ `! g7 O6 c( \
110 s& W$ J: a& L$ d) X: w0 _/ z
12
) R8 o; D4 T+ ]) c; T0 S; O: p13
% B# W, D3 J, r% h0 u8 h& i; G2 \14' {" ?, V0 h& z* x5 X! c
}' _( U0 L4 k! g8 I4 b0 V/ ~, b1 }) j
?>
1 H$ w. W; _: H" ~ 大佬说: 可以看到Handle类有个__destruct函数,该函数可以触发getFlag函数,但是__wakeup函数会将所有东西清空,这里改下属性个数就能绕过,参考SugerCRM漏洞,然后getFlag函数的条件可以用指针绕过,以前安恒的月赛也考过,最后flag的匹配可以利用parse_url漏洞,三个斜杠就能绕过了7 @, n8 Y3 \+ L/ U
exp
( m3 ^7 c ?2 A8 P, y8 f* C# |0 k7 X: T& T2 E; t
View Code1 ~! P+ d$ K2 D% H. x
+ \. L4 l+ w$ y" h: A, \& J$ \9 Y! G5 |0 |2 z1 |# C
3 S: P- x+ U5 L$ W& `3 o2 W
https://xi4or0uji.github.io/2019/04/22/2019-4-22-2019-全国大学生信息安全竞赛-writeup/#more: X, S- g9 _1 z1 }
2 [0 e" m! Q, p; a. Y6 s( V( l" A
总结:本次比赛只是做了misc的题,web的题目打的也太少了,要继续加油,多进行php的审计,同时多做一些web题总结经验,下次争取多打几道web题/ }7 z1 c, Y A2 t5 C+ u: M i
---------------------
% R c* q, ]; d5 G/ f6 V作者:Jeff King ( f8 i2 T0 Y4 n1 E$ h4 B
来源:CSDN
4 f( B' Q* L" ~% [& ]# ]% h4 L6 r* \, d
: b) v/ n) |/ K2 S
% v8 [* N' ^, v: F8 X |
zan
|