AlpacaHack Logo

Challenges

Sign InSign Up

Rows:

CHALLENGEAUTHORS

SOLVES

(CURRENT)

SOLVE RATE

(AT CONTEST TIME)

AlpacaHack 2100

Daily AlpacaHack

admin

1745

solves

-

1570

solves

-

Daily AlpacaHack

926

solves

-

AlpacaHack Round 2 (Web)

624

solves

Top 28%

= 84/300 users

Daily AlpacaHack

617

solves

-

Daily AlpacaHack

600

solves

-

SECCON Beginners CTF 2024

539

solves

Top 73%

= 683/928 teams

Daily AlpacaHack

409

solves

-

Daily AlpacaHack

403

solves

-

Daily AlpacaHack

371

solves

-

Daily AlpacaHack

367

solves

-

echo

AlpacaHack Round 1 (Pwn)

363

solves

Top 32%

= 56/174 users

Daily AlpacaHack

349

solves

-

Daily AlpacaHack

342

solves

-

Daily AlpacaHack

336

solves

-

Encoding Basics

Daily AlpacaHack

330

solves

-

Daily AlpacaHack

329

solves

-

🐈

Daily AlpacaHack

323

solves

-

Bars

Daily AlpacaHack

318

solves

-

108

Daily AlpacaHack

305

solves

-

Rows:

One More Login Challenge

Daily AlpacaHackTopic: MongoDBReleased: Apr 16, 2026

129 solves
Web
Medium

Author:

tchen

tchen

またログイン?! (注: Another Login Challenge を先に解く必要はありません)

初心者向けヒント1: 問題の概要
  • index.js では、簡易的なログイン機能が実装されています。
  • MongoDBを利用して、送られたusernamepasswordのユーザーが存在するかチェックしているようです。
  • 自分でユーザーを作ることはできなさそうです。また、adminというユーザーが登録されていますが、そのパスワードを推測することも不可能でしょう。
初心者向けヒント2: 問題のアプローチ
  • コメントにもある通り、application/x-www-form-urlencodedapplication/jsonの両方の形式でデータを送ることができるようです。したがって、JSONを利用すればusernamepasswordに文字列以外のデータを送れます。
  • ログイン画面の機能だけでは意図したデータを送れないかもしれません。ブラウザ以外の方法でデータを送る方法については、I wanna be the AdminのWriteup を参考にしてください。
初心者向けヒント3: 本当に詰まった時は
  • MongoDB インジェクション、あるいはNoSQL インジェクションで検索してみましょう。
one-more-login-challenge.tar.gz
descriptionsolveswriteups