読者です 読者をやめる 読者になる 読者になる

眠気

戯言とメモ

シュ~カツctf Writeupその1

大分間が空きましたが元気です。がんばります

色々あって引きこもってました。 現在もわりと引きこもってます。色々あって今にいたります

年末に風邪をこじらせている間にいつの間にか年も越して 気がつけば2月…

最近はCTFなどはにわかに参加しているくらいで 体を壊したり落ち込んだりアレでソレで 特に書く内容もない現状です。

せっかくなので、 他のwriteupさまの内容を見たので、雑ですが書いてみました。


一応シュ~カツ(?)としてネットエージェントさまのシューカツCTF(2017年卒採用特別選考CTF)に参加していました。

前年はusiomisakiにやられてしまっていたので、今年こそは。。。と頑張ってました。

ちなみに自分も最後まで解けてないので、続きをだれか…(以下同文)

mondai1

問題ページのHTMLのソースに去年の問題文があったので、

echo LzYxMDIvcGouaGJwLy86cHR0aA== | base64 -D | rev
http://pbh.jp/2016/

とかして2016の部分を2017にすると見れたので、良かったということで最後まで解いてなかった…です。

一応ちゃんと正攻法?で解きました。 base64でデコードして3文字ずらすだけだったようです

$cat solv.rb 
require 'base64'
Base64.decode64("c2VrMW1zMjUzNDo=").each_char do |s|
   print (s.ord - 3).chr
end
$ruby solv.rb 
pbh.jp/2017

mondai2

マイナンバーらしいです…

755304ac4117729248f05fd12203735598d727dd

MD5の総当りっぽいので頑張ってもらいました。 mondai3.zip:462365337210

mondai3

画像が2つ入ってたのでクリスタで重ねてレイヤーを減算にしたらそれっぽい文字が出たので

mondai4.zip:Macrocheira

mondai4

ポートスキャンすると、3つのポートが空いていたので、

MQTTとRedisとmemcachedにつなげて適当に探せば色々出ました

kurobeとtateyamaで検索したらアルペンルートとか出てきたのでそれをメチャクチャ入れまくってたりしましたが、結局1883+6379+11211というヒントでいけました。

mondai5.zip::kurobetateyamatoyama

あとたまにokayamaとか偽passwordが流れてきてメッチャ迷った。すこぶる困った。

MQTTで遊んでたときの

mondai5

これに4,5日くらいかかってアレでした

某アニメを見てなかったためにヒントにも気付けませんでした。見ました。 txtファイルの更新日時で検索するとこのツイート

が出てくるので、SECCONとかtomorinaoとかかなと思っても出来ず、 zipを眺めまぐったりしたり 試行錯誤の末大文字小文字を総当りすると解凍できました。ESP…

mondai6.zip:TomoriNao

mondai6

適当にdotpeekなどで処理を見ると、しんかんせんえきいんぜで21文字の回文を作れば良いっぽいので

mondai7.zip:しんかんせんえきいんぜんいきえんせんかんし

mondai7

解き方忘れてしまっていたので解き直してました。turai

pcapを読むとそれらしいファイルirainaiyou1.zipをアップロードしている事がわかったり

他にもニコニコ大百科で何か見ていることとかわかるけど結局よくわかんない

irainaiyou1.zipのパスワードっぽい文字列もアップロード時の削除用のhanamogeraくらいで試行錯誤組み替えて試してもダメだったり

結局総当りしようと思い、まずは適当に辞書で回そうとこのような辞書を使わせていただいてこんな感じで適当にやったところ何か出てきたので

$ cat brute.rb 
path = "john.txt"
max = File.read(path).count("\n")
open(path) do |f|
    f.each_line.with_index do |pass,i|
        # puts i.to_s + "/" + max.to_s
        s = system "7za x -p#{pass.chop}  irainaiyou1.zip -aoa > /dev/null 2> /dev/null"
        if s
            puts pass
            break
        end
    end
end%$ ruby brute.rb 
alexander

alexanderでirainaiyou1.zipを解凍

出てきた画像ko'tae.jpgの文字で解凍出来ました

mondai8.zip:ログ・ググザジョ

グロンギ語で「もうすぐだよ」らしいですね。zipのpasswordにunicodeが使いづらかったのでLhaplusを使うと楽でした。

これもわりと苦戦した というか色々アレだった…

mondai8

mondai8は簡単になった方で解きました

truecryptで暗号化されているので、またもや先程の辞書を使わせていただいてtruecrackでアレしたり

passwordが1234なのでマウントすると見えないファイルがいくつかあるので

あとは野菜レシピ.docxのパスワードが何故かpasswordだったので開くと謎フォントの答えが出てくる

ので適当なフォントにいじって

mondai9.zipFadeWhitePearl

mondai9

宇佐美定行
「ワキミウオンズサミウケサワキケキワナオンワゼケサミサケサ
ズキアウオガミゼインミゼケキワキケサインケキケサアナワウイウズキズゼ
アンミガアンケキアウワゼミンズナ
イナアゼワキワンアナミガミガイゼミンミゼミウオンワン
ワサミガミガオガワンケキワナオンケゼアナオキアゼワサミガズガズキインズナ
ミゼアウズキケキアキケキオウイゼイキケサアキズウアキイキケキオサイガミガミゼ
オンイサケガワンケキインケサワキケサアキミゼインミゼケキワキケサインケキケサオガズゼワナオンイガオンイキケキ
イガオンイナワサイウインケキオガイキアウアンケキケサアキミキズナ
アキオンワガアウミキケンオガアンミガオキミガイキアウミキアウ
ミウミガミガオガケゼワキズキケキミゼミゼインミゼケキケゼケキワキオガイナアゼワキワン
イナオキアゼアンアキワンワキオガミキズキケキミンズガオキオゼ
ワウインズウワサミガケゼイキケキオガズキケンケサ

ワキケサインケキケサケンズウオガケナアウミナケキオンケンアキ」

らしいです

宇佐美定行とかで調べると、上杉暗号というのが出てくるので

2文字ずつ使われてる文字を調べたりして

$ cat s.rb
f = open("mondai9.txt")
g0 = []
g1 = []
f.each_line do |l|
 l.split("").each_slice(2) do |n|
 g0.push(n[0])
 g1.push(n[1])
 end
end
p g0.uniq
p g1.uniq
$ ruby s.rb
["ワ", "ミ", "オ", "ズ", "ケ", "ア", "イ"]
["キ", "ウ", "ン", "サ", "ナ", "ゼ", "ガ"]

[“ワ”, “ミ”, “オ”, “ズ”, “ケ”, “ア”, “イ”]と

[“キ”, “ウ”, “ン”, “サ”, “ナ”, “ゼ”, “ガ”]から、

あずみおいわけ と うぜんながさきかなと思って復号化

$ cat uesugi.rb 
# encoding: utf-8
# 上杉暗号
sx, sy =  'あずみおいわけ うぜんながさき'.split
iroha_table = [
  %w(い ろ は に ほ へ と),
  %w(ち り ぬ る を わ か),
  %w(よ た れ そ つ ね な),
  %w(ら む う ゐ の お く),
  %w(や ま け ふ こ え て),
  %w(あ さ き ゆ め み し),
  %w(ゑ ひ も せ す ん "),
]
File.open('mondai9.txt') do |file|
  file.each_line do |enc|
    enc.chop!
    result = []
    enc.split(//).each_slice(2) do |a,b|
      x = sx.index(a)
      y = sy.index(b)
      ch = iroha_table[x][y]
      result << ch
    end
    puts "#{result.join}"
  end
end
$ ruby uesugi.rb 
しようわよんし"ゆうさんねん
かいのたけた"しんけ"んにあやかり
はつは"いされる
ふろしきにつつまれたようき
みつつのき"ゆうひにくろみつをかける
たいか"と"らまてんとちとて"おこつた
うえすき"けんしんとたけた"しんけ"んのりゆうこうて"
こうふみやけ"のていは"んとなる
とうめいなものはつくつていない
よつつのひしか"たたけた"ひ"しのふろしき
ふくろはときしのなか"れをくむ
あけちみつひて"のかもん

しんけ"んもちのせいそ"うもと

信玄餅の製造元は桔梗屋(ききょうや)さんらしいです。

mondai10.zip:桔梗屋

というわけで

エクストリーム編につづく。。。