πTSULOTT
Easy

Overview
VΓ o ΔαΊ§u chΓΊng ta sαΊ½ cΓ³ hai trΖ°α»ng inpit nhαΊp vΓ o, nhαΊp code cα»§a bαΊ‘n Δα» nhαΊn win jackpot vΓ nhαΊp 6 sα» Δα» lαΊ₯y code.
α» ΔΓ’y chΓΊng ta sαΊ½ nhαΊp ΔαΊ‘i gΓ¬ ΔΓ³ nhΖ°ng chΓΊng ta sαΊ½ nhαΊp α» take code trΖ°α»c rα»i lαΊ₯y mα»t chuα»i base64 mΓ trang ΔΖ°a ra rα»i nΓ³ sαΊ½ trαΊ£ vα» kαΊΏt quαΊ£ nhΖ° hΓ¬nh α» dΖ°α»i.

Analys
Sau mα»t lΓΊc thΓ¬ chΓΊng ta xem source code hiα»n tαΊ‘i cΓ³ gΓ¬ ctrl+U

α» ΔΓ’y cΓ³ gợi Γ½ cho chΓΊng ta lΓ GET/?is_debug=1 sau khi nhαΊp vΓ o chΓΊng ta sαΊ½ cΓ³ source code cα»§a bΓ i nhΖ° sau:

ChΓΊng ta sαΊ½ chΓΊ Γ½ tα»i hai ΔoαΊ‘n code PHP nhΖ° sau:
ΔoαΊ‘n code php thα»© nhαΊ₯t cΓ³ mα»t class Object cΓ³ hai thuα»c tΓnh lΓ jackpot vΓ enter.
TiαΊΏp theo chΓΊ Γ½ tα»i dΓ²ng 16 nΓ³ sαΊ½ unserialize ΔoαΊ‘n code khi nhαΊp input vΓ o, vΓ nΓ³ Δược gΓ‘n biαΊΏn $obj. TiαΊΏp theo nΓ³ kiα»m tra cΓ³ $obj khΓ΄ng thΓ¬ nΓ³ sαΊ½ random jackpot thΓ nh 6 sα» vΓ random tα»« 10-99 cΓ‘ch nhau ra.
Cuα»i cΓΉng thuα»c tΓnh enter mΓ bαΊ±ng jackpot thΓ¬ cΓ³ thα» cΓ³ flag
α» dΖ°α»i cΓ³ thΓͺm ΔoαΊ‘n code serialize nα»i dung code chΓΊng ta nhαΊp α» dΖ°α»i.
TΓ³m lαΊ‘i khi nΓ y chΓΊng ta nhαΊn ra ΔΓ’y lΓ PHP Deserialization khi ΔΓ³ chΓΊng ta cΓ³ thα» control cαΊ£ class Object trΓͺn bαΊ±ng cΓ‘ch ghi ΔΓ¨ nΓ³ Δα» hai thuα»c tΓch jackpot vΓ enter bαΊ±ng nhau.
Exploit
Γ tΖ°α»ng bΓ’y giα» chΓΊng ta sαΊ½ xΓ’y dα»±ng lαΊ‘i class Object giα»ng nhΖ° trΓͺn vΓ khα»i tαΊ‘o hΓ m __constructor cho hai thuα»c tΓnh bαΊ±ng nhau.

Flag: MeePwnCTF{__OMG!!!__Y0u_Are_Milli0naire_N0ww!!___}
Last updated