PrestaShop

Tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks

Od XSS do RCE

  • PrestaXSRF: PrestaShop Exploitation Script that elevate XSS to RCE or Others Critical Vulnerabilities. For more info check this post. It provides support for PrestaShop Versions 8.X.X and 1.7.X.X, and allows to:
  • (RCE) PSUploadModule(); - Upload a custom Module: Otpremi Persistent Module (backdoor) u PrestaShop.

ps_checkout ExpressCheckout silent login account takeover (CVE-2025-61922)

Nedostatak validacije identiteta u ps_checkout modulu < 5.0.5 omogućava neautentifikovanom napadaču da prebaci sesiju na bilo kog kupca tako što će dostaviti njihov email.

  • Endpoint (unauth): POST /module/ps_checkout/ExpressCheckout.
  • Tok: ExpressCheckout.php prihvata attacker JSON, proverava samo orderID, gradi ExpressCheckoutRequest i poziva ExpressCheckoutAction::execute().
  • Greška u autentifikaciji: U ranjivim verzijama ExpressCheckoutAction poziva CustomerAuthenticationAction::execute() kada nijedan korisnik nije prijavljen. Ta metoda jednostavno radi customerExists(<payer_email>) i context->updateCustomer(new Customer($id)), tako da postojanje email-a == prijava (bez provere lozinke/tokena).
  • Polje e-maila pod kontrolom napadača: order.payer.email_address unutar JSON payload-a se čita pomoću ExpressCheckoutRequest::getPayerEmail().

Koraci eksploatacije

  1. Prikupite bilo koji registrovani email kupca (admin je odvojen i nije pogođen ovim tokom).
  2. Pošaljite neautentifikovani POST na kontroler sa orderID i email-om žrtve u order.payer.email_address.
  3. Čak i ako endpoint vrati 500, odgovor će sadržati kolačiće za kontekst kupca žrtve (sesija je već promenjena), omogućavajući pristup PII ili kupovinu sa sačuvanim karticama.
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"}}}

Referencije

Tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks