PrestaShop
Tip
AWS ํดํน ๋ฐฐ์ฐ๊ธฐ ๋ฐ ์ฐ์ตํ๊ธฐ:
HackTricks Training AWS Red Team Expert (ARTE)
GCP ํดํน ๋ฐฐ์ฐ๊ธฐ ๋ฐ ์ฐ์ตํ๊ธฐ:HackTricks Training GCP Red Team Expert (GRTE)
Azure ํดํน ๋ฐฐ์ฐ๊ธฐ ๋ฐ ์ฐ์ตํ๊ธฐ:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks ์ง์ํ๊ธฐ
- ๊ตฌ๋ ๊ณํ ํ์ธํ๊ธฐ!
- **๐ฌ ๋์ค์ฝ๋ ๊ทธ๋ฃน ๋๋ ํ ๋ ๊ทธ๋จ ๊ทธ๋ฃน์ ์ฐธ์ฌํ๊ฑฐ๋ ํธ์ํฐ ๐ฆ @hacktricks_live๋ฅผ ํ๋ก์ฐํ์ธ์.
- HackTricks ๋ฐ HackTricks Cloud ๊นํ๋ธ ๋ฆฌํฌ์งํ ๋ฆฌ์ PR์ ์ ์ถํ์ฌ ํดํน ํธ๋ฆญ์ ๊ณต์ ํ์ธ์.
XSS์์ RCE๊น์ง
- PrestaXSRF: PrestaShop ์ต์คํ๋ก์ ์คํฌ๋ฆฝํธ๋ก XSS๋ฅผ RCE ๋๋ ๊ธฐํ ์ฌ๊ฐํ ์ทจ์ฝ์ฑ์ผ๋ก ์น๊ฒฉ์ํต๋๋ค. ์์ธํ ๋ด์ฉ์ this post๋ฅผ ํ์ธํ์ธ์. ์ด ๋๊ตฌ๋ PrestaShop ๋ฒ์ 8.X.X ๋ฐ 1.7.X.X๋ฅผ ์ง์ํ๋ฉฐ ๋ค์์ ํ์ฉํฉ๋๋ค:
- (RCE) PSUploadModule(); - ์ปค์คํ Module ์ ๋ก๋: Persistent Module (backdoor)์ PrestaShop์ ์ ๋ก๋ํฉ๋๋ค.
ps_checkout ExpressCheckout silent login account takeover (CVE-2025-61922)
ps_checkout๋ชจ๋< 5.0.5์์ ์ ์ ๊ฒ์ฆ์ด ๋๋ฝ๋์ด ์ธ์ฆ๋์ง ์์ ๊ณต๊ฒฉ์๊ฐ ์ด๋ฉ์ผ์ ์ ๊ณตํ์ฌ ์ด๋ค ๊ณ ๊ฐ์ ์ธ์ ์ผ๋ก๋ ์ ํํ ์ ์์ต๋๋ค.
- ์๋ํฌ์ธํธ (์ธ์ฆ ์์):
POST /module/ps_checkout/ExpressCheckout. - ํ๋ฆ:
ExpressCheckout.php๋ ๊ณต๊ฒฉ์๊ฐ ๋ณด๋ธ JSON์ ๋ฐ์orderID๋ง ํ์ธํ๊ณExpressCheckoutRequest๋ฅผ ๊ตฌ์ฑํ ๋คExpressCheckoutAction::execute()๋ฅผ ํธ์ถํฉ๋๋ค. - ์ธ์ฆ ๋ฒ๊ทธ: ์ทจ์ฝํ ๋ฒ์ ์์
ExpressCheckoutAction์ ๋ก๊ทธ์ธ์ด ์๋ ๊ฒฝ์ฐCustomerAuthenticationAction::execute()๋ฅผ ํธ์ถํฉ๋๋ค. ํด๋น ๋ฉ์๋๋ ๋จ์ํcustomerExists(<payer_email>)๋ฅผ ์ํํ๊ณcontext->updateCustomer(new Customer($id))๋ฅผ ์คํํ๋ฏ๋ก email existence == login (๋น๋ฐ๋ฒํธ/ํ ํฐ ๊ฒ์ฆ ์์). - ๊ณต๊ฒฉ์๊ฐ ์ ์ดํ๋ ์ด๋ฉ์ผ ํ๋: JSON ํ์ด๋ก๋ ๋ด
order.payer.email_address๊ฐExpressCheckoutRequest::getPayerEmail()์ ์ํด ์ฝํ๋๋ค.
๊ณต๊ฒฉ ๋จ๊ณ
- ๋ฑ๋ก๋ ๊ณ ๊ฐ ์ด๋ฉ์ผ์ ์์งํฉ๋๋ค (admin ๊ณ์ ์ ๋ณ๋์ด๋ฉฐ ์ด ํ๋ฆ์ ์ํฅ์ ๋ฐ์ง ์์ต๋๋ค).
- ์ปจํธ๋กค๋ฌ์ ๋ํด ์ธ์ฆ๋์ง ์์ ์ํ๋ก
orderID์ ํผํด์ ์ด๋ฉ์ผ์order.payer.email_address์ ๋ฃ์ด POST ์์ฒญ์ ๋ณด๋ ๋๋ค. - ์๋ํฌ์ธํธ๊ฐ
500์ ๋ฐํํ๋๋ผ๋ ์๋ต์๋ ํผํด์ ๊ณ ๊ฐ ์ปจํ ์คํธ์ ์ฟ ํค๊ฐ ํฌํจ๋์ด ์์ต๋๋ค(์ธ์ ์ด ์ด๋ฏธ ์ ํ๋จ). ์ด๋ฅผ ํตํด PII ์ ๊ทผ์ด๋ ์ ์ฅ๋ ์นด๋๋ก ๊ฒฐ์ ํ๋ ๋ฑ์ ํ์๊ฐ ๊ฐ๋ฅํฉ๋๋ค.
POST /module/ps_checkout/ExpressCheckout HTTP/1.1
Host: `<target>`
Content-Type: application/json
Content-Length: 72
{"orderID":"1","order":{"payer":{"email_address":"victim@example.com"}}}
์ฐธ๊ณ ์๋ฃ
- CVE-2025-61922: Zero-Click Account Takeover on Prestashop (๋ธ๋ก๊ทธ)
- GitHub Advisory GHSA-54hq-mf6h-48xh
Tip
AWS ํดํน ๋ฐฐ์ฐ๊ธฐ ๋ฐ ์ฐ์ตํ๊ธฐ:
HackTricks Training AWS Red Team Expert (ARTE)
GCP ํดํน ๋ฐฐ์ฐ๊ธฐ ๋ฐ ์ฐ์ตํ๊ธฐ:HackTricks Training GCP Red Team Expert (GRTE)
Azure ํดํน ๋ฐฐ์ฐ๊ธฐ ๋ฐ ์ฐ์ตํ๊ธฐ:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks ์ง์ํ๊ธฐ
- ๊ตฌ๋ ๊ณํ ํ์ธํ๊ธฐ!
- **๐ฌ ๋์ค์ฝ๋ ๊ทธ๋ฃน ๋๋ ํ ๋ ๊ทธ๋จ ๊ทธ๋ฃน์ ์ฐธ์ฌํ๊ฑฐ๋ ํธ์ํฐ ๐ฆ @hacktricks_live๋ฅผ ํ๋ก์ฐํ์ธ์.
- HackTricks ๋ฐ HackTricks Cloud ๊นํ๋ธ ๋ฆฌํฌ์งํ ๋ฆฌ์ PR์ ์ ์ถํ์ฌ ํดํน ํธ๋ฆญ์ ๊ณต์ ํ์ธ์.


