AlpacaHack Logo

Challenges

Sign InSign Up

Rows:

CHALLENGEAUTHORS

SOLVES

(CURRENT)

SOLVE RATE

(AT CONTEST TIME)

AlpacaHack 2100
Misc

Daily AlpacaHack

admin

1667

solves

-

1549

solves

-

Daily AlpacaHack

892

solves

-

AlpacaHack Round 2 (Web)

612

solves

Top 28%

= 84/300 users

Daily AlpacaHack

597

solves

-

Daily AlpacaHack

573

solves

-

SECCON Beginners CTF 2024

512

solves

Top 73%

= 683/928 teams

Daily AlpacaHack

395

solves

-

Daily AlpacaHack

388

solves

-

echo
Pwn

AlpacaHack Round 1 (Pwn)

358

solves

Top 32%

= 56/174 users

Daily AlpacaHack

358

solves

-

Daily AlpacaHack

348

solves

-

Daily AlpacaHack

334

solves

-

Daily AlpacaHack

329

solves

-

Encoding Basics
Misc
Crypto

Daily AlpacaHack

324

solves

-

Daily AlpacaHack

323

solves

-

Daily AlpacaHack

317

solves

-

🐈
Web

Daily AlpacaHack

316

solves

-

Bars
Web

Daily AlpacaHack

303

solves

-

108
Misc

Daily AlpacaHack

297

solves

-

Rows:

high and low

Daily AlpacaHack
87 solves
Crypto

Author:

guess the high or low!

初心者向けヒント1
  • server.py では独自乱数 RNG が実装されています。
  • この乱数は Mersenne Twister を簡略化して、より乱数予測をしやすくしたものです。
  • この問題のゴールは、この独自乱数の乱数予測を行い、 money を増やしてフラグを出力させることです。
初心者向けヒント2
  • 乱数予測を行うには、サーバーの RNG の状態を、自分のマシン上で再現する必要があります。
  • RNG の状態は state, p です。
  • pnext_value を呼び出すたびにインクリメントされるだけなので、容易に予測できます。
  • では、 state はどうでしょうか。
  • y から x を逆算可能であることに注目してください。
server.py
descriptionsolveswriteups