COVID-19 CTF【Write-up】
Tiger King CTFと全部おなじ問題だと思って放置してました。一部の問題が同じですがこっちのほうが面白そうでしたね。
CovidScammers
Free Flag
1点なんでstringsコマンドかけてそれっぽいのがないか調べたらありました。
$ strings client | grep "{" R)){R)){ :c|w{ c|w{ c|w{ c|w{ VjAj{j jePj{jrj jnj{j& PjCj{j& j{j j?Vjhj{j j1PjBj{j I{{{ 3K 3s$3S03{8 3K(3s,3S43{< o{Pf o{pf o{@f o{`f jJPjwj{j jHPjxj{j juj{j jvj{j Vjmj{j% jaPjej{j j{RjBjzj Pj{h ~{@f o{@f o{@f o{@f o{@f o{@f o{@f o{pf j{Ph Pj{jkj Pj{h Pj{h Pj{h Pj{h Kk{>n ,{gK F1{C .KX;`{ *w{7KL {Fqh 6j{v =P.{`o {6Zgk ?)7{y U{X4L nyK{ {4]*9 "t{C R{2Y {U_Up B'N{ { iV ms{|E !{;- F{h0p -Q{, |vg{~ 2{$ZkKqN HHRK{ {{RFXk {hFD" oc{qI m{3fg f{b2 u"{H c*{:8 {A7"9 8.{E d[m{ +{j| ~8{PAa A{+d Q{S0 NDZ}{ &C8{$ {%*' G+|{e% }eF{ k3I{ {|hN #{-cO0 Td|v{_ {WNY s\0{+ b{Yd Vfhp68{ k8{: U'{O `u{w V{UT {%j} oXA_{ g,Mn9{ {4tS 5Ix{: _{:( {J), {ACM kd{a \7e{ {@(W 1G{14 J{8rs)F {' D Q&n{-w U{ep3 y'{.U )S{C U {w m5{RG5 Sj{T <{#FX `k@]{ 4Yg#{J {dI2 ZCh{ 4{x1 +L0{ ^2k_x{ {53Zl {6{& {/lrx [Wg*{ <W{. D?]4 |{! ~cx{ p]X:q{> ao{4 E{B!! j{j" PjAj{j" Pj~j{j" j{j. jsPj{h jtPj{ Wjmj{j2 Wjmj{j2 covid{freeFlagLookatMe} H{1S A4x{%` {x`M` {OJW &5 M{ S[{Q (fS{ggRcjh {|WM u;{Gk {*eU zj{& E{B!! &'&)&5&;&?&K&S&Y&e&i&o&{& +'+1+3+=+?+K+O+U+i+m+o+{+ 2)252Y2]2c2k2o2u2w2{2 5-535;5A5Q5e5o5q5w5{5}5 ;!;#;-;9;E;S;Y;_;q;{; =!=-=3=7=?=C=o=s=u=y={= A!A3A5A;A?AYAeAkAwA{A %*s%s OF %s {
Arch
$ file client client: ELF 32-bit LSB pie executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=13b974db5ad86f4956c1373a90e6632104f7d1fa, not stripped
Scouting
C2サーバのドメインを答える問題でした。 stringsでは見つからなかったですが、スタックに積まれてるっしょと思って適当にブレークポイント設置してスタックの中身みてたらそれっぽいのがあったので入力したらあってました。
0000| 0xffffcfa0 --> 0x56556fbc --> 0x62696c00 ('') 0004| 0xffffcfa4 --> 0xf7fddfcd (add esp,0x30) 0008| 0xffffcfa8 --> 0xf7dc767c (<__GI_getenv+124>: ) 0012| 0xffffcfac --> 0x5669e24c ("OPENSSL_ia32cap") 0016| 0xffffcfb0 --> 0xf7d9d5fc --> 0x2a40 ('@*') 0020| 0xffffcfb4 --> 0x4 0024| 0xffffcfb8 --> 0x742fdcf0 0028| 0xffffcfbc ("mp/.serverauth.tn6aUcM0uF\002MNXXM2LEPNVUKZLQJF2FGZKDOJCVI3KSFZDHEMDEJ4QX2===\n") 0032| 0xffffcfc0 ("serverauth.tn6aUcM0uF\002MNXXM2LEPNVUKZLQJF2FGZKDOJCVI3KSFZDHEMDEJ4QX2===\n") 0036| 0xffffcfc4 ("erauth.tn6aUcM0uF\002MNXXM2LEPNVUKZLQJF2FGZKDOJCVI3KSFZDHEMDEJ4QX2===\n") 0040| 0xffffcfc8 ("th.tn6aUcM0uF\002MNXXM2LEPNVUKZLQJF2FGZKDOJCVI3KSFZDHEMDEJ4QX2===\n") 0044| 0xffffcfcc ("n6aUcM0uF\002MNXXM2LEPNVUKZLQJF2FGZKDOJCVI3KSFZDHEMDEJ4QX2===\n") 0048| 0xffffcfd0 ("cM0uF\002MNXXM2LEPNVUKZLQJF2FGZKDOJCVI3KSFZDHEMDEJ4QX2===\n") 0052| 0xffffcfd4 --> 0x4e4d0246 0056| 0xffffcfd8 ("XXM2LEPNVUKZLQJF2FGZKDOJCVI3KSFZDHEMDEJ4QX2===\n") 0060| 0xffffcfdc ("LEPNVUKZLQJF2FGZKDOJCVI3KSFZDHEMDEJ4QX2===\n") 0064| 0xffffcfe0 ("VUKZLQJF2FGZKDOJCVI3KSFZDHEMDEJ4QX2===\n") 0068| 0xffffcfe4 ("LQJF2FGZKDOJCVI3KSFZDHEMDEJ4QX2===\n") 0072| 0xffffcfe8 ("2FGZKDOJCVI3KSFZDHEMDEJ4QX2===\n") 0076| 0xffffcfec ("KDOJCVI3KSFZDHEMDEJ4QX2===\n") 0080| 0xffffcff0 ("CVI3KSFZDHEMDEJ4QX2===\n") 0084| 0xffffcff4 ("KSFZDHEMDEJ4QX2===\n") 0088| 0xffffcff8 ("DHEMDEJ4QX2===\n") 0092| 0xffffcffc ("DEJ4QX2===\n") 0096| 0xffffd000 ("QX2===\n") 0100| 0xffffd004 --> 0xa3d3d ('==\n') 0104| 0xffffd008 --> 0x5674a5b0 ("covidfunds.net")
感想
時間なくて全然解けなかったですけどマルウェアを解析するっていう面白い問題なのでしっかり復習したいと思います。