AlpacaHack Logo

Challenges

Sign InSign Up

Rows:

CHALLENGEAUTHORS

SOLVES

(CURRENT)

SOLVE RATE

(AT CONTEST TIME)

AlpacaHack 2100
Misc

Daily AlpacaHack

admin

1633

solves

-

1544

solves

-

Daily AlpacaHack

883

solves

-

AlpacaHack Round 2 (Web)

611

solves

Top 28%

= 84/300 users

Daily AlpacaHack

594

solves

-

Daily AlpacaHack

567

solves

-

SECCON Beginners CTF 2024

505

solves

Top 73%

= 683/928 teams

Daily AlpacaHack

388

solves

-

Daily AlpacaHack

387

solves

-

echo
Pwn

AlpacaHack Round 1 (Pwn)

357

solves

Top 32%

= 56/174 users

Daily AlpacaHack

353

solves

-

Daily AlpacaHack

343

solves

-

Daily AlpacaHack

331

solves

-

Daily AlpacaHack

325

solves

-

Daily AlpacaHack

317

solves

-

Encoding Basics
Misc
Crypto

Daily AlpacaHack

317

solves

-

Daily AlpacaHack

312

solves

-

🐈
Web

Daily AlpacaHack

309

solves

-

Bars
Web

Daily AlpacaHack

298

solves

-

108
Misc

Daily AlpacaHack

296

solves

-

Rows:

Emojify

Daily AlpacaHack
594 solves
Web

Author:

:pizza: -> 🍕

Beginner Hint 1: About Difficulty
  • This challenge is in the Web category, i.e., web applications.
  • Unlike yesterday's challenge, which was Easy, this one is Medium.
  • Daily AlpacaHack currently defines four difficulty levels: Easy, Medium, Hard, and Very Hard.
  • Medium is one step above Easy. If Daily AlpacaHack is your first exposure to CTF, solving it may be tough.
  • If you get stuck, feel free to lean on AI to find a starting point for the solution.
  • Even if you can't solve it, check other players' solutions (writeups) afterward to review and learn.
  • 24 hours after release, a writeup tab will appear in the tab bar below.
Beginner Hint 2: Running the Challenge Locally
  • After extracting the attachment, you'll find compose.yaml, Dockerfile, and directories for three services.
  • Modern CTFs often ship a Docker Compose file so players can reproduce the remote environment locally.
  • From the root of the distribution, run docker compose up.
  • With default settings, the challenge server will start at http://localhost:3000/.
  • Use this local server to investigate vulnerabilities and to test the solver you build.
Beginner Hint 3: 問題を解くまでのアプローチ
  • まずはどのようなWebサービスが動いているかをソースコードを読んで把握するところから始めてみましょう。
  • ローカルで立ち上げた問題サーバーの振る舞いを確認しながら読むと理解が早いです。
  • サービスの挙動をおおよそ理解したら今度はゴールが何かを確認することをおすすめします。
  • フラグがどこにあって、何ができたらそのフラグを取得できるのかを考えると、その「何ができたら」を達成するのがこの問題の趣旨であるとわかります。
  • また、今回の問題サーバーはJavaScriptで書かれています。
  • JavaScriptの関数の細かい挙動などをあれこれ確認するには、JavaScriptを実行可能な対話環境があると便利です。
  • 手元のターミナルでnodeコマンドを実行して色々実験してみましょう。
  • 合わせて、使われているJavaScriptの関数の仕様を調べてみるのも有効でしょう。
  • MDNのドキュメント(https://developer.mozilla.org/ja/docs/Web )は情報の精度や網羅性がしっかりしているので、情報リソースとしては有用です。
emojify.tar.gz
descriptionsolveswriteups