green_bar.png Save The Earth! Save The Earth! - 地球環境を守ろう! Save The Earth! green_bar.png

URL: https://play.bcactf.com/

BCACTF は、5回目の参加です。

BCACTF 1.0 (62位)

BCACTF 2.0 (63位)

BCACTF 3.0 (54位)

BCACTF 4.0 - 不参加

BCACTF 5.0 (239位)

BCACTF 6.0 (78位) - 今回


今回は975点を獲得し、最終順位は78位でした。

bcactf_2025_score.png



今回は、参加者が少なかったですね。

CTFTime からイベントが消えちゃっていたり、イベント開始までレジストレーションができなかったりしたのが原因なのかな、と思います。



以下はチャレンジのリストです。

bcactf_2025_misc.png
bcactf_2025_binex.png
bcactf_2025_crypto.png
bcactf_2025_rev.png
bcactf_2025_webex.png
bcactf_2025_algo.png





[Misc]: dessert_time (25 points)


Challenge

I’m a very good planner, but my robotics competition really fried my brain! I remember eating something for the past few weeks but I just can’t seem to remember what. Can you please help me? Here’s my schedule for reference

Hint: I remember eating it early in the morning, but sometimes I would snack on it in the evening too.


Solution

Google Sheetが与えられます。

フラグの一部である { をサーチしてみたらヒットしました。視覚的に見えないのは、フォントの色のせいかな(そこは調べませんでした)。


正規表現を使って数字以外をサーチしてみました。

bcactf_2025_dessert_time.png



すべての文字を集めたらフラグになります。


Flag: bcactf{Apple_pieS_Are_yuMMy}





[Misc]: Molasses (25 points)


Challenge

This GIF shows the flag letter-by-letter but it’s really slow and I don’t want to wait all day. Maybe there’s a faster way to get the flag?

Attachment:

  • molasses.gif

Solution

Animation GIF で、タイマーが長くセットされているんだと思うんですが、Mac PC の Preview で開いたらすべての画像が表示されたので、各画像の文字を並べるだけでした。

想定解は別にあるんでしょうね。たぶん。


Flag: bcactf{is_it_gif_or_gif_a51fd7ace416}





[Misc]: Annoying (50 points)


Challenge

Sometimes things are more annoying than they are difficult.

Attachment:

  • DLXENH.zip

Solution

かなり階層の深いzipファイルです。

Mac PC の Archive Utility で解凍すると、途中で3回ほど停止しましたが、ほぼ全自動で解凍できました。

これも、想定解ではないかな。。


Flag: bcactf{w3ll_th4t_w4s_4nn0y1ng_fca743ef043c1d8}





[Forensics]: Flag Flag (25 points)


Challenge

It’s a flag—inside a flag.

Attachment:

  • flag-flag.png
flag-flag.png



Solution

各色の RGB の値が、文字に変換できます。

rgb(98,99,97)

rgb(99,116,102)

rgb(123,49,106)

rgb(78,55,117)

rgb(89,107,106)

+7D は、} のことです。


Flag: bcactf{1jN7uYkj}





[Forensics]: Recovery Shop (50 points)


Challenge

Welcome to the recovery shop! For a small price, we can restore you to your best look!

Hint: Have you tried looking at yourself in the mirror? (the next hint is a real one)

Attachment:

  • recovers.heic
bcactf_2025_heic.png



(Unsolved)

これは、解けませんでした。


まず、exiftoolで以下が見つかります。

$ exiftool recovers.heic
:
Layer Names                     : orz, 6, 2, 5, 1, 3, bcactf{dOn!t_trUs!_the_T1Tle1}, 4
Layer Unicode Names             : orz, 6, 2, 5, 1, 3, bcactf{dOn!t_trUs!_the_T1Tle1}, 4

これが next hint と言われるものですかね?


.heic ファイルは Mac PC で普通に開けるし、なんなら文字のコピーもできます。

コピペで読み取った文字列がこちら。

bcactf{th!ss_
@!e_83Kl
ts_fr
_b!n@na_
f$_|@gOrz}

改行を除くと、bcactf{th!ss_@!e_83Klts_fr_b!n@na_f$_|@gOrz} になりますが、これはフラグとして通りませんでした。

結局のところ、大文字と小文字が間違っていたり、|lだったりするだけなんですが、画像から文字を読取るだけのチャレンジでは、見間違いやすい文字は使わないで欲しいと思いました。


ヒントも、意味不明過ぎるし。むしろ無い方がよかった。

Recoveryって何? Mirrorって何? “Don’t trust the title” って何??

ただの愚痴です。


まぁ、学んだこともありました。

Tips

Mac PCで画像からコピペで読み取った文字列は、実際の文字とは異なることがある。





[Forensics]: tune in (50 points)


Challenge

my boss radioed me a message but I can’t hear it. he told me to tune in, can you help me out?

Hint: look for suspicious audio

Attachment:

  • transmission.wav

(Unsolved)

これは、解けませんでした。調査の過程だけ、残しておきます。


.wavファイルなので、まず Audacity で開きます。

ステレオのR側に音の大きな雑音、L側にSSTVの問題でよく出てくる音が入っています。

L側は音がかなり小さくて、音量を上げる必要がありました。


Audacity の Amplify では音量を上げられなかった(おそらくR側の音が大きいから)ので、Normalizeを使いました。

Normalize stereo channels independently のオプションは必須です。

bcactf_2025_audacity_tune_in_1.png



Exportする際も、Monoにしないといけません。

bcactf_2025_audacity_tune_in_2.png



Windows PC にコピーして、RX-SSTVツールを使ってみましたが、まともな画像は取れませんでした。

bcactf_2025_audacity_tune_in_3.png





[Forensics]: plain-sight (75 points)


Challenge

Can you help find my flag? I tried asking around but all I found was this poem.

Attachment:

  • hiding_in_plain_sight.pdf

Solution

Libre Office で開いて、オブジェクトを移動したりするとフラグが見つかるやつです。


Flag: bcactf{Now_y0U_s3e_mE}





[Forensics]: Tarred and Feathered (75 points)


Challenge

i recently exfiltrated this archive from a suspect’s computer. they illegally stole all of our flags.
however, not everything is as it seems. the flag is in the archive, but where? i couldn’t find it, can you?

Hint1: Not everything in the archive is what it seems. Look beyond the visible files.
Hint2: how can you get more information about what files are in the archive?

Attachment:

  • challenge.tar.gz

Solution

普通に解凍しようとすると、以下のようなエラーになります。解凍には失敗しますが、flag.txtのパスはわかります。

$ tar zxvf challenge.tar.gz
x note.txt
x ../.cache/.hidden_logs/.�\200\213flag.txt: Path contains '..': Unknown error: -1
tar: Error exit delayed from previous errors.

以下のように-Oオプションとパスの指定でフラグの中身が取れました。

$ tar zxvf challenge.tar.gz -O ../.cache/.hidden_logs/
x ../.cache/.hidden_logs/.�\200\213flag.txtbcactf{you_tarred_me_apart_1bf1fb1}

Flag: bcactf{you_tarred_me_apart_1bf1fb1}





[Web]: People (50 points)


Challenge

Find the administrator’s email address. Wrap it in bcactf{}.

http://challs.bcactf.com:42593


(Unsolved)

多くの人が解けているのに、自分は解けませんでした。


View Source で以下が見つかります。

<span>Name: Roscoe Quigley<br />
<!-- username: administrator -->
<img src="https://gravatar.com/avatar/06003dfd18a22e6809e736cf27eaabb6" loading="lazy" />
<hr/>

結局のところ、このHash値を CrackStation でCrackしたらメールアドレスが見つかるんですが、そういう発想は全く浮かばなかったです。


だって、username: administrator なんだし、あとはドメイン名を見つける問題かな、と思っていろいろと調べたんですが、

何気に Roscoe Quigley っていう人も実在するみたいだし、でもそれだとOSINTチャレンジだしなぁと思いつつ、時間の無駄になりそうだったので諦めました。


せめて role: administrator みたいにしておいてくれたら、よかったのにと思います。

ただの愚痴です。





[Web]: Temps (75 points)


Challenge

Find out when this web app was compiled. Report your answer as a Unix timestamp in milliseconds wrapped with bcactf{}. (For example, the date “Wed, 01 Jan 2020 05:00:00 GMT” would be reported as bcactf{1577854800000})

http://challs.bcactf.com:26137


Solution

_app/version.json を見ればバージョンがわかるようです。

http://challs.bcactf.com:26137/_app/version.json
{"version":"1735776187591"}

Flag: bcactf{1735776187591}





[Web]: What? (75 points)


Challenge

Surmount the insurmountable.

http://challs.bcactf.com:47861

bcactf_2025_web_what.png

Attachment:

  • what.php (<– イベントの途中で追加されました)

Solution

添付ファイル(what.php)が提供される前に解けました ^^


2つのHash値を比較するアプリだとすると、Hash Collisionを元にしたチャレンジなのが予想できます。

参考:

https://github.com/spaze/hashes?tab=readme-ov-file


以下の2つ使って、フラグが取れました。

TEXTCOLLBYfGiJUETHQ4hAcKSMd5zYpgqf1YRDhkmxHkhPWptrkoyz28wnI9V0aHeAuaKnak
TEXTCOLLBYfGiJUETHQ4hEcKSMd5zYpgqf1YRDhkmxHkhPWptrkoyz28wnI9V0aHeAuaKnak

Flag: bcactf{wh0_kn0ws_4nym0r3_11fab08d769a}





[OSINT]: Japanese Lyrics OSINT (100 points)


Challenge

Out of the top 25 most streamed songs in Japan according to Wikipedia, we picked a song (with Japanese lyrics) and translated a line from Japanese to English using various large language models. Here were the results (each line is a different translation):

An unending, unending flavor has seeped in.

There’s a taste that won’t go away, it’s stained into me.

The taste that won’t disappear, won’t disappear, has soaked in deeply.

The taste that doesn’t fade, doesn’t fade, is deeply ingrained.

What is the name of the song, according to its English Wikipedia page? Wrap the name in bcactf{}. It’s case-sensitive, so please follow the case as it is on Wikipedia.

Hint1: The difficulty in this challenge perhaps lies in gathering the lyrics to the top 25 most streamed songs. But maybe there’s an easy way to get that done?

Hint2: The same word is translated as “unending”, “won’t go away”, “won’t disappear”, and “doesn’t fade”. It may be worth finding out what word that is.

Hint3: What is the Japanese word for flavor/taste?

Hint4: The flag is a romanized Japanese word.


Solution

リストは以下のWikiにありました。

https://en.wikipedia.org/wiki/List_of_best-selling_singles_in_Japan


そもそも曲数が25曲しかなくて、フラグは99回Submitできるので、Brute Forceするだけでした。9回目で当たりました。


Flag: bcactf{Kaibutsu}