nicklegrで個人参加。
210点で97位(858チーム中)でした。
意外と良問揃い?
鯖落ちもお祭りのうち。CTFあるある。
フラグの例は? (Misc)
平成最後の最後、令和最初のSECCON CTFにようこそ。 フラグはSECCON{reiwa}です。
SECCON{reiwa}
bREInWAck (Misc)
元号が変わる。記号も変わる。
参考: https://ja.wikipedia.org/wiki/Brainfuck
間違いなさそうなところは決め打ち、残りは総当たりして全パターンをWebインタプリタで実行。
# coding: utf-8
require "pp"
input =
"令和和和和和和和和和和和和和和和和「令和
和和和和令和和和和令和和和和和和和令和和
和和和和令和和平平平平平成」令和和和。令
和和和和和。成成。。平成成成成。成。令令
和和和和和和和和和和和。令和和。平平平和
和和和。令和和。和和和和。令令和和和和和
和和和和和和和。平平平和和和和和和和和和
和和和和。成成成成成成成成。令成成成成成
成成成。令令。成成成成成。成成成成成成。
令和。平平和和。令令令和和和和和和和和和
和。"
%w|< > + -|.permutation(4) do |a|
pp a
str = input.dup
str.gsub!("\n", "")
str.gsub!("平", a[0])
str.gsub!("成", a[1])
str.gsub!("令", a[2])
str.gsub!("和", a[3])
str.gsub!("「", "[")
str.gsub!("」", "]")
str.gsub!("。", ".")
puts str
end
["<", "-", ">", "+"]
>++++++++++++++++[>+++++>++++>+++++++>++++++>++<<<<<-]>+++.>+++++.--..<----.-.>>+++++++++++.>++.<<<++++.>++.++++.>>++++++++++++.<<<+++++++++++++.--------.>--------.>>.-----.------.>+.<<++.>>>++++++++++.
SECCON{bREIn_WAnic!}
零は? (Misc)
nc zerois-o-reiwa.seccon.jp 23615
SECCON Beginnersであったようなやつ。
% nc zerois-o-reiwa.seccon.jp 23615
[1/100]
0=8-?
?=8
[2/100]
0=78*55-?
?=4290
[3/100]
0=40*96+?-3903
?=63
[4/100]
0=56*87+82-?-4879
?=
...
方程式のソルバーを知らないので、?
を総当たりで数値に置き換えてeval
した。
たまにやたら大きな解でタイムアウトするのがいやらしい。
最後に-?
が来る場合は探索する必要がないので、それを入れたら通った。
最後に+?
もあるようだけど通ったときはたまたま間に合ったらしい。
ラスト2問の答えが必ず0で通るのは令(0)和(0)
なんだろうか。
require "pp"
require_relative "pwnlib"
host = "zerois-o-reiwa.seccon.jp"
port = 23615
PwnTube.open(host, port) do |tube|
j = 1
loop do
puts "Stage #{j}:"
s = tube.recv_until(/0=(.+)\n/)
s =~ /0=(.+)\n/
expr = $1
tube.recv_until("?=")
puts expr
ans = nil
if expr =~ /(.+)-\?$/
ans = eval($1)
puts "simple: #{ans}"
else
for i in 0..1000
expr2 = expr.gsub("?", "(#{i.to_s})")
ret = eval(expr2)
if ret == 0
puts "found: #{i}"
ans = i
break
end
end
if !ans
for i in 0..1000000
expr2 = expr.gsub("?", "(#{i.to_s})")
ret = eval(expr2)
if ret == 0
puts "found: #{i}"
ans = i
break
end
end
end
end
tube.sendline(ans.to_s)
j += 1
end
end
% ruby zero_sum.rb
[*] connected
Stage 1:
78-?
simple: 78
Stage 2:
31*11-?
simple: 341
Stage 3:
24*?-96-960
found!: 44
Stage 4:
25+45-13*?+307
found!: 29
Stage 5:
?*76+17-5+49-2417
found!: 31
Stage 6:
?+94*33-13+67-74-3129
found!: 47
Stage 7:
90*66+69-?-68*87+35-120
found!: 8
...
Stage 98:
84+6-8*30*47-43+4+80*80-72-53*9+66*84+94-22-9+6*65+97*20-7-68+52*75*10+68-84+53-87*1-17+94*4+19-78*25-89*24+19-64*52+37-44+97*55-99+97*12*23-13+60-42+73*4*92-92+50+18*67-25*99-25+30-29*57+92+72-31*44+64-77*74-97*92+76+44*77-75-2*65+55-50+8*5+32*68-39+99*92-80-15+6*89-88*2+82+11-?
simple: 89475
Stage 99:
79+73*52-1+86-95*55+78-9*84*14+49-81-91+74*71*33-18+1+54*65-13*91+90-42+76-92*19+66*76-62+25*26-67-44*21+56+71-76*65+50-48*52+70-20*93-9*11+11*21+65-31-98+75*59+91-1*7+22*96-25*76-83+42-98*42+29-90+14*32*6-97+61+48*23-20-92+20*52+52-12*82*82-14+38*42+91-62*31+63-69+44-56*98+5*53-?*0-53-76870
found!: 0
Stage 100:
93+57*17-73*87-62+18-64*28+67-60*29+30+36*19-59*72+29-55+70-60*12+23-55*79*61+44-55-31*39+25-23*47+99+89-56*44+94-51*58*17+23-92-19+40*56*26+62-98-33*11+43-11*64+90*31+74-44*34+90-36+64*40-41+65-16*63*9-19+97+43*69-92-1*49+81*71-11+44+87-71*59*12+90-49+65-21*46+78*8-36*13+63-62-81*36+0*?+8-49+325901
found!: 0
Stage 101:
"Congratulations!\nThe flag is SECCON{REIWA_is_not_ZERO_IS}.\n(Enter RETURN key if connection is not disconnected)\n"
[*] connection closed
新元号発表 (Forensics)
わかりやすい。
PDFから画像を抽出するWebサービスがあったのでバラすと
うーん?
reiwaVote (Web)
ヤバいやつ混ざってて草。
他の方のWriteup
- https://twitter.com/xrekkusu/status/1123272920917086209
- https://twitter.com/xrekkusu/status/1123273674348351489
- https://twitter.com/maytheplic/status/1123271591217876994
- https://twitter.com/Bono_iPad/status/1123276699213287426
- http://yuta1024.hateblo.jp/entry/2019/05/01/022354
- https://kusuwada.hatenablog.com/entry/2019/05/01/022016
- https://qiita.com/kusano_k/items/402ebf004e8f9463cb17
- http://shift-crops.hatenablog.com/entry/2019/05/01/024011
- https://gist.github.com/megumish/545019f534392c3e47b8db1ec6212b89
- https://qiita.com/shiracamus/items/3d3ec5d95c8384ccf424
- http://xor.zoku-sei.com/Entry/72/
- https://raintrees.net/news/138
- https://kanpapa.com/today/2019/05/seccon-reiwa-ctf.html
- https://ptr-yudai.hatenablog.com/entry/2019/05/01/020001