スキップしてメイン コンテンツに移動

ksnctf #5 Onion

 ksnctfの5問目、"Onion"を解いていきます。

問題


 問題文は意味不明な文字列が並べられているだけ。

 とりあえず暗号か何かを疑ってみたりしましたが、文字列には空白文字もなければ意味不明な場所で改行していたりと全く手がかりを見つけることができなかった。

  一時間ほど粘ってみたが、自分の知識ではどうにかなるものではないと悟った。

 ここで先人の知恵を拝借。

解法

  • hint1:base64
  • hint2:fileコマンド便利だよね
と書いてあった

とりあえず問題文をファイルにしてfileコマンドに投げてみると

$ file onion
onion: ASCII text

  ここで問題文はASCIIコードで表すことのできる文字のみで構成されていることが判明。

 次にbase64について調べると、

  • 7ビットで表されるASCII文字しかやり取りできない環境で、他のデータも送受信可能にする為に元データを6ビットずつに分割し、分割された値に対応するASCII文字を割り当てている。
  • '000000'~'111111'に対応するASCII文字(= 'A'~'Z' , 'a'~'z' , '0'~'9' , '+' , '/')と'='のみで構成される。
  • 76文字ごとに改行が入る。
 また、デコードはweb上でもコマンドでもできる模様。

 base64には改行が含まれているようなので、web上で実行しました。

 一回デコードするとまたbase64らしき文字列が出てくるので、デコードできなくなるまでデコードを繰り返すと、

begin 666 <data>
51DQ!1U]&94QG4#-3:4%797I74$AU
 
end

 こんなのが出てきた。

 これも暗号っぽいのでgoogle先生に聞いてみると、"uuencode"という、base64と同じようにデータをテキストに変換するものらしい。

 これもweb上でもコマンドでもデコードすることができる。

 これをデコードしてflagゲット。

まとめ

 今回も自分の知らないことばかりだった。
 もっと精進せねば。

 

コメント

このブログの人気の投稿

i3wm 厨二感溢れる軽量デスクトップ環境

 皆さんは、i3というデスクトップ環境をご存知ですか?  i3(i3ウィンドウマネージャ, i3wm)は、マウスをほとんど使わずに操作することができる、超軽量デスクトップ環境です。  またi3wmは、今現在最も新しい タイル型ウィンドウマネージャー で、マウスを使わずにカタカタカタ、ッターンとショートカットを打ち込むだけで画面がどんどん変わっていくので、側から見ると厨二感溢れるデスクトップ環境となっています。  今回は、i3wmのインストール方法と、使い方を紹介します。  余談ですが、i3に関してネットで調べるときには"i3"と検索するのではなく"i3wm"と調べると、ヒットしやすくなります。(某CPUや某電気自動車などが出てくるので) i3wmのインストール  今回は、ubuntuへのインストールです。(ちなみに自分はubuntu17.04)  まずはi3wm本体のインストール $ sudo apt install i3 次にdmenuとcomptonをインストール $ sudo apt install dmenu compton dmenuはi3wmでアプリケーションを起動するときに使い、 comptonはターミナルの透過のために必要なものです。 インストールが終わったら再起動してログイン画面でデスクトップ環境を"i3"にしてログインします。 使い方  i3wmが開くと次のような質問をされます。 ~/.config/i3/config を作るか modキーは何にするか configファイルは作っておいたほうがいいと思います。  modキーはi3wmにおいてショートカットを使うときに押すキーです。これはwindowsキーやcommandキーがいいと思います。  ここにショートカットに一覧を載せておきます。  (ちなみに下の変なマークはmodキー) Basics  + ↩︎ open new terminal  +  j focus left  +  k focus down  +  l focus up  +  ; focus right  +  space toggle f

ksnctf #4 Villager A 初めての書式文字列攻撃。

 ksnctfの4問目、Villager A を解きました。 問題 https://ksnctf.sweetduet.info/problem/4  問題ページにはアドレス、ID、パスワードが書かれているのでSSHでログイン。  ログインしたら、とりあえずls。 $ ls flag.txt q4 readme.txt  readmeには大したこと書いてなかった。  flag.txtはもちろん開けない。  とりあえずq4を実行してみる。 $ ./q4 What's your name? Sugita Genpaku Hi, Sugita Genpaku Do you want the flag? はい Do you want the flag? yes Do you want the flag? نعم فعلا Do you want the flag? いいえ Do you want the flag? no I see. Good bye.  "no"と答えるまで煽られ続ける模様。  ユーザーが入力した値を出力しているあたり、この前本で読んだばかりの書式文字列攻撃を使うっぽい。  いきなりアセンブリ読むのもアレなのでstringsかけてみる。  stringsコマンドは、ファイルに含まれる文字列を出力してくれる。 strings q4 /lib/ld-linux.so.2 libstdc++.so.6 __gmon_start__ _Jv_RegisterClasses __gxx_personality_v0 libm.so.6 libgcc_s.so.1 libc.so.6 _IO_stdin_used fopen puts putchar stdin printf fgets strcmp __libc_start_main CXXABI_1.3 GLIBC_2.1 GLIBC_2.0 PTRh [^_] What's your name? Hi, Do you want the flag? I see. Good bye. flag.txt  どうにかすればfopenでflag.txtの中身を出力してくれると予想。  ここでもう一度

Parallels Desktop Lite -Macに無料でLinuxの仮想環境を作る

 今回は、有名な仮想化ソフト"Parallels Desktop"の無料版、"Parallels Desktop Lite"を紹介したいと思います。  では早速、仮想環境などの説明は省いてParallels Desktop Liteの説明から行きましょ う。 Parallels Desktop Liteって?  Parallels Desktop Liteはその名の通りParallels Desktopの機能限定版で、App Storeからインストールすることができます。   Parallels Desktopとは違い、Linux系osの仮想環境は無料で構築することができます。(Windowsを入れる際には課金が必要) 簡単!仮想環境の構築  Parallels Desktop Liteをインストールして開くと、次のようなウィンドウが開きます。  Linuxのisoイメージファイルは、自分でダウンロード、下の「無料システム」の部分からダウンロードのどちらでも構いません。  僕は、Ubuntuの公式ページから、Ubuntu17.04をダウンロードしました。 インストール時に気になった部分は一点だけで、 この画面の、"高速インストール"を有効にしてインストールすると、設定がおかしなことになっていて使い物になりませんでした。(あくまでも自分の場合)    このあと、新しい仮想マシンが立ち上がるので、あとはいつも通りLinuxのインストールをするだけです。 使ってみての感想  これ、めちゃめちゃ使いやすいです。  インストールしたosに"parallels tools"をインストールすると、なお使いやすい。  parallels toolsのインストールは、Linuxのインストール後、ウィンドウのどこかに通知がされると思うのでその手順に従ってください。  これには、parallelsのウィンドウサイズに合わせてosのディスプレイサイズを合わせてくれる機能や、macとのファイル共有機能、macと仮想環境との間でシームレスにコピペができる機能が含まれています。  この機能は、

ページビューの合計

ラベル一覧を表示