hacktricks/pentesting-web/parameter-pollution.md

6.6 KiB

Uchafuzi wa Parameta

Jifunze kuhusu udukuzi wa AWS kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!

Njia nyingine za kusaidia HackTricks:

{% embed url="https://websec.nl/" %}

Muhtasari wa Uchafuzi wa Parameta za HTTP (HPP)

Uchafuzi wa Parameta za HTTP (HPP) ni mbinu ambapo wadukuzi wanabadilisha parameta za HTTP kubadilisha tabia ya programu ya wavuti kwa njia ambazo hazikukusudiwa. Ubadilishaji huu hufanywa kwa kuongeza, kurekebisha, au kunakili parameta za HTTP. Athari za ubadilishaji huu hazionekani moja kwa moja kwa mtumiaji lakini zinaweza kubadilisha kwa kiasi kikubwa utendaji wa programu kwenye upande wa seva, na kuathiriwa kwa njia inayoonekana kwa mtumiaji.

Mfano wa Uchafuzi wa Parameta za HTTP (HPP)

URL ya shughuli ya programu ya benki:

  • URL Asili: https://www.victim.com/send/?from=accountA&to=accountB&amount=10000

Kwa kuingiza parameta ya ziada ya from:

  • URL Iliyobadilishwa: https://www.victim.com/send/?from=accountA&to=accountB&amount=10000&from=accountC

Shughuli inaweza kutozwa kwa usahihi kwa akaunti ya accountC badala ya accountA, ikionyesha uwezo wa HPP kubadilisha shughuli au utendaji mwingine kama vile kurekebisha nywila, mipangilio ya uthibitishaji wa hatua mbili, au ombi la ufunguo wa API.

Uchambuzi wa Parameta kulingana na Teknolojia

  • Jinsi parameta zinavyochambuliwa na kupewa kipaumbele inategemea teknolojia ya wavuti inayotumika, ikibadilisha jinsi HPP inavyoweza kutumika.
  • Zana kama Wappalyzer husaidia kutambua teknolojia hizi na tabia zao za uchambuzi.

Udukuzi wa PHP na HPP

Kesi ya Udukuzi wa OTP:

  • Muktadha: Mfumo wa kuingia unahitaji Nenosiri Moja la Wakati (OTP) ulidukuliwa.
  • Mbinu: Kwa kuingilia kati ombi la OTP kwa kutumia zana kama Burp Suite, wadukuzi walikariri parameta ya barua pepe katika ombi la HTTP.
  • Matokeo: OTP, iliyokusudiwa kwa barua pepe ya awali, badala yake ilipelekwa kwa anwani ya barua pepe ya pili iliyotajwa katika ombi lililodukuliwa. Kasoro hii iliruhusu ufikiaji usioruhusiwa kwa kuzunguka hatua ya usalama iliyokusudiwa.

Hali hii inaonyesha kosa kubwa katika sehemu ya nyuma ya programu, ambayo ilichakata parameta ya kwanza ya barua pepe kwa ajili ya uundaji wa OTP lakini iliyotumia ya mwisho kwa utoaji.

Kesi ya Udukuzi wa Ufunguo wa API:

  • Hali: Programu inaruhusu watumiaji kusasisha ufunguo wao wa API kupitia ukurasa wa mipangilio ya wasifu.
  • Mwelekeo wa Shambulio: Mdudu anagundua kwamba kwa kuongeza parameta ya ziada ya api_key kwa ombi la POST, wanaweza kubadilisha matokeo ya kazi ya kusasisha ufunguo wa API.
  • Mbinu: Kwa kutumia zana kama Burp Suite, mdudu anatengeneza ombi linalojumuisha parameta mbili za api_key: moja halali na nyingine yenye nia mbaya. Seva, ikichakata tu tukio la mwisho, inasasisha ufunguo wa API kwa thamani iliyotolewa na mdudu.
  • Matokeo: Mdudu anapata udhibiti juu ya utendaji wa API wa muathiriwa, labda kupata au kurekebisha data binafsi bila idhini.

Mfano huu unasisitiza zaidi umuhimu wa kushughulikia parameta kwa usalama, hasa katika vipengele muhimu kama usimamizi wa ufunguo wa API.

Uchambuzi wa Parameta: Flask vs. PHP

Jinsi teknolojia za wavuti zinavyoshughulikia parameta za HTTP zilizorudi hutofautiana, ikibadilisha hatari yao kwa mashambulizi ya HPP:

  • Flask: Inachukua thamani ya kwanza ya parameta iliyokutwa, kama a=1 katika mfuatano wa utaftaji a=1&a=2, ikipendelea tukio la kwanza kuliko nakala zinazofuata.
  • PHP (kwenye Seva ya HTTP ya Apache): Kinyume chake, inapendelea thamani ya mwisho ya parameta, ikichagua a=2 katika mfano uliopewa. Tabia hii inaweza kwa bahati mbaya kurahisisha mashambulizi ya HPP kwa kuheshimu parameta iliyodukuliwa na mdudu badala ya ile ya asili.

Marejeo

{% embed url="https://websec.nl/" %}

Jifunze kuhusu udukuzi wa AWS kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!

Njia nyingine za kusaidia HackTricks: