LoginSignup
11
5

More than 5 years have passed since last update.

CpawCTF write up(Level1)

Last updated at Posted at 2018-04-18

CpawCTF解法メモ。
CTF初心者です。

Q1.[Misc] Test Problem

10pt

問題

この問題の答え(FLAG)は、cpaw{this_is_Cpaw_CTF} です。
下の入力欄にFLAGを入力してSubmitボタンを押して、答えを送信しましょう!

Enjoy CpawCTF!!!!

解法

cpaw{this_is_Cpaw_CTF}をコピペ

Q6.[Crypto] Classical Cipher

10pt

2問目がQ6となってるらしい。2~5はボツになったんだろうな。

問題

暗号には大きく分けて、古典暗号と現代暗号の2種類があります。特に古典暗号では、古代ローマの軍事的指導者ガイウス・ユリウス・カエサル(英語読みでシーザー)が初めて使ったことから、名称がついたシーザー暗号が有名です。これは3文字分アルファベットをずらすという単一換字式暗号の一つです。次の暗号文は、このシーザー暗号を用いて暗号化しました。暗号文を解読してフラグを手にいれましょう。

暗号文: fsdz{Fdhvdu_flskhu_lv_fodvvlfdo_flskhu}

解法

f : (→e→d→)c
s : p
d : a
.
.
.

という風に全ての文字を3文字分ずらせば良い。
シーザー暗号でググればシェルのコマンドやpythonのコードが転がっているから使うのもアリ。

Q7.[Reversing] Can you execute ?

10pt

問題

拡張子がないファイルを貰ってこのファイルを実行しろと言われたが、どうしたら実行出来るのだろうか。
この場合、UnixやLinuxのとあるコマンドを使ってファイルの種類を調べて、適切なOSで実行するのが一般的らしいが…
問題ファイル: exec_me

解法

とりあえずファイルをダウンロードして、ターミナルで file exec_meすると

exec_me: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.24, BuildID[sha1]=663a3e0e5a079fddd0de92474688cd6812d3b550, not stripped

とのことなので、どうやら64bitのlinux環境で実行できるものらしい。
Linux環境でsudo chmod 777 exec_me; ./exec_meでOK

Q8.[Misc] Can you open this file ?

10pt

問題

このファイルを開きたいが拡張子がないので、どのような種類のファイルで、どのアプリケーションで開けば良いかわからない。
どうにかして、この拡張子がないこのファイルの種類を特定し、どのアプリケーションで開くか調べてくれ。
問題ファイル: open_me

解法

前問同様、ファイルをダウンロードして、ターミナルで file open_meすると

open_me: Composite Document File V2 Document, Little Endian, Os: Windows, Version 10.0, Code page: 932, Author: ?v??, Template: Normal.dotm, Last Saved By: ?v??, Revision Number: 1, Name of Creating Application: Microsoft Office Word, Total Editing Time: 28:00, Create Time/Date: Mon Oct 12 04:27:00 2015, Last Saved Time/Date: Mon Oct 12 04:55:00 2015, Number of Pages: 1, Number of Words: 3, Number of Characters: 23, Security: 0

Microsoft Office Word と書いてある。
右クリック → アプリケーションから開くでWordで開いたらFlagゲット
ubuntuのlibreofficeでもいける

Q9.[Web] HTML Page

10pt

問題

HTML(Hyper Text Markup Language)は、Webサイトを記述するための言語です。
ページに表示されている部分以外にも、ページをより良くみせるためのデータが含まれています。
次のWebサイトからフラグを探して下さい。
http://q9.ctf.cpaw.site

※この問題のサーバへの攻撃はお止めください。

解法

ブラウザのDeveloper toolsを用いてソースコードをみる。
じっくり探すとflagが書いてある。

Q10.[Forensics] River

10pt

問題

JPEGという画像ファイルのフォーマットでは、撮影時の日時、使われたカメラ、位置情報など様々な情報(Exif情報)が付加されることがあるらしい。
この情報から、写真に写っている川の名前を特定して欲しい。
問題ファイル: river.jpg

FLAGの形式は、"cpaw{river_name}"
例:隅田川 → cpaw{sumidagawa}

解法

EXIF情報を読み取り、緯度と経度からこの川の場所を探す。
EXIF確認君というWebサービスを使うとマップで場所を示してくれるので便利。

Q11.[Network]pcap

10pt

問題

ネットワークを流れているデータはパケットというデータの塊です。
それを保存したのがpcapファイルです。
pcapファイルを開いて、ネットワークにふれてみましょう!
pcapファイル

解法

WireSharkを用いてpcapファイルを見ればいい

Q12.[Crypto]HashHashHash!

10pt

問題

ハッシュ関数とは、値を入れたら絶対にもとに戻せないハッシュ値と呼ばれる値が返ってくる関数です。
ですが、レインボーテーブルなどでいくつかのハッシュ関数は元に戻せてしまう時代になってしまいました。
以下のSHA1というハッシュ関数で作られたハッシュ値を元に戻してみてください!(ヒント:googleで検索)

e4c6bced9edff99746401bd077afa92860f83de3

フラグは
cpaw{ハッシュを戻した値}
です。

解法

Hash Sha1: Encryption and reverse decryptionなどのWebサービスでSHA1のハッシュ値をデコードできる。

Q12.[Crypto]HashHashHash!

10pt

問題

ハッシュ関数とは、値を入れたら絶対にもとに戻せないハッシュ値と呼ばれる値が返ってくる関数です。
ですが、レインボーテーブルなどでいくつかのハッシュ関数は元に戻せてしまう時代になってしまいました。
以下のSHA1というハッシュ関数で作られたハッシュ値を元に戻してみてください!(ヒント:googleで検索)

e4c6bced9edff99746401bd077afa92860f83de3

フラグは
cpaw{ハッシュを戻した値}
です。

解法

Hash Sha1: Encryption and reverse decryptionなどのWebサービスでSHA1のハッシュ値をデコードできる。

Q14.[PPC]並べ替えろ!

10pt

問題

下にある配列の中身を大きい順に並べ替えて、くっつけてcpaw{並べ替えた後の値}をフラグとして提出してください。
例:もし配列{1,5,3,2}っていう配列があったら、大きい順に並べ替えると{5,3,2,1}となります。
そして、フラグはcpaw{5321}となります。
同じようにやってみましょう(ただし量が多いので、ソートするプログラムを書いたほうがいいですよ!)

[15,1,93,52,66,31,87,0,42,77,46,24,99,10,19,36,27,4,58,76,2,81,50,102,33,94,20,14,80,82,49,41,12,143,121,7,111,100,60,55,108,34,150,103,109,130,25,54,57,159,136,110,3,167,119,72,18,151,105,171,160,144,85,201,193,188,190,146,210,211,63,207]

解法

ソートするコードを書くだけ

sort.py
list = [問題の配列]
for i in sorted(list, reverse=True):
    print(i, end="")
11
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
5