Reset/Forgotten Password Bypass
Reading time: 7 minutes
tip
Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za udukuzi kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.
Password Reset Token Leak Via Referrer
- Header ya HTTP referer inaweza kuvuja token ya kurekebisha nenosiri ikiwa imejumuishwa katika URL. Hii inaweza kutokea wakati mtumiaji anapobofya kiungo cha tovuti ya mtu wa tatu baada ya kuomba kurekebisha nenosiri.
- Impact: Uwezekano wa kuchukua akaunti kupitia mashambulizi ya Cross-Site Request Forgery (CSRF).
- Exploitation: Ili kuangalia ikiwa token ya kurekebisha nenosiri inavuja katika header ya referer, omba kurekebisha nenosiri kwa anwani yako ya barua pepe na bofya kiungo cha kurekebisha kilichotolewa. Usibadilishe nenosiri lako mara moja. Badala yake, tembelea tovuti ya mtu wa tatu (kama Facebook au Twitter) wakati ukikamata maombi kwa kutumia Burp Suite. Kagua maombi ili kuona ikiwa header ya referer ina token ya kurekebisha nenosiri, kwani hii inaweza kufichua taarifa nyeti kwa watu wa tatu.
- References:
- HackerOne Report 342693
- HackerOne Report 272379
- Password Reset Token Leak Article
Password Reset Poisoning
- Washambuliaji wanaweza kubadilisha header ya Host wakati wa maombi ya kurekebisha nenosiri ili kuelekeza kiungo cha kurekebisha kwenye tovuti mbaya.
- Impact: Inasababisha uwezekano wa kuchukua akaunti kwa kuvuja token za kurekebisha kwa washambuliaji.
- Mitigation Steps:
- Thibitisha header ya Host dhidi ya orodha ya domain zilizoruhusiwa.
- Tumia mbinu salama, za upande wa seva ili kuunda URLs kamili.
- Patch: Tumia
$_SERVER['SERVER_NAME']
kuunda URLs za kurekebisha nenosiri badala ya$_SERVER['HTTP_HOST']
. - References:
- Acunetix Article on Password Reset Poisoning
Password Reset By Manipulating Email Parameter
Washambuliaji wanaweza kubadilisha ombi la kurekebisha nenosiri kwa kuongeza vigezo vya barua pepe vya ziada ili kuhamasisha kiungo cha kurekebisha.
- Ongeza barua pepe ya mshambuliaji kama parameter ya pili kwa kutumia &
php
POST /resetPassword
[...]
email=victim@email.com&email=attacker@email.com
- Ongeza barua pepe ya mshambuliaji kama parameter ya pili ukitumia %20
php
POST /resetPassword
[...]
email=victim@email.com%20email=attacker@email.com
- Ongeza barua pepe ya mshambuliaji kama parameter ya pili ukitumia |
php
POST /resetPassword
[...]
email=victim@email.com|email=attacker@email.com
- Ongeza barua pepe ya mshambuliaji kama parameter ya pili kwa kutumia cc
php
POST /resetPassword
[...]
email="victim@mail.tld%0a%0dcc:attacker@mail.tld"
- Ongeza barua pepe ya mshambuliaji kama parameter ya pili kwa kutumia bcc
php
POST /resetPassword
[...]
email="victim@mail.tld%0a%0dbcc:attacker@mail.tld"
- Ongeza barua pepe ya mshambuliaji kama parameter ya pili kwa kutumia ,
php
POST /resetPassword
[...]
email="victim@mail.tld",email="attacker@mail.tld"
- Ongeza barua pepe ya mshambuliaji kama parameter ya pili katika array ya json
php
POST /resetPassword
[...]
{"email":["victim@mail.tld","atracker@mail.tld"]}
- Hatua za Kupunguza:
- Pitia na kuthibitisha ipasavyo vigezo vya barua pepe upande wa seva.
- Tumia taarifa zilizopangwa au maswali yenye vigezo ili kuzuia mashambulizi ya kuingiza.
- Marejeleo:
- https://medium.com/@0xankush/readme-com-account-takeover-bugbounty-fulldisclosure-a36ddbe915be
- https://ninadmathpati.com/2019/08/17/how-i-was-able-to-earn-1000-with-just-10-minutes-of-bug-bounty/
- https://twitter.com/HusseiN98D/status/1254888748216655872
Kubadilisha Barua Pepe na Nywila ya Mtumiaji yeyote kupitia Vigezo vya API
- Washambuliaji wanaweza kubadilisha vigezo vya barua pepe na nywila katika maombi ya API ili kubadilisha taarifa za akaunti.
php
POST /api/changepass
[...]
("form": {"email":"victim@email.tld","password":"12345678"})
- Hatua za Kupunguza:
- Hakikisha uthibitisho mkali wa vigezo na ukaguzi wa uthibitisho.
- Tekeleza ufuatiliaji na uandishi wa habari thabiti ili kugundua na kujibu shughuli za kushuku.
- Marejeo:
- Uchukue Akaunti Kamili kupitia Ubadilishaji wa Vigezo vya API
Hakuna Kizuizi cha Kiwango: Barua Pepe ya Kumbukumbu
- Ukosefu wa kizuizi cha kiwango kwenye maombi ya kurekebisha nenosiri kunaweza kusababisha barua pepe ya kumbukumbu, ikimzidisha mtumiaji barua pepe za kurekebisha.
- Hatua za Kupunguza:
- Tekeleza kizuizi cha kiwango kulingana na anwani ya IP au akaunti ya mtumiaji.
- Tumia changamoto za CAPTCHA kuzuia matumizi ya kiotomatiki.
- Marejeo:
- Ripoti ya HackerOne 280534
Jifunze Jinsi Token ya Kurekebisha Nenosiri Inavyotengenezwa
- Kuelewa muundo au njia nyuma ya uzalishaji wa token kunaweza kusababisha kutabiri au kujaribu nguvu token. Chaguzi kadhaa:
- Kulingana na Wakati
- Kulingana na UserID
- Kulingana na barua pepe ya Mtumiaji
- Kulingana na Jina la Kwanza na Jina la Mwisho
- Kulingana na Tarehe ya Kuzaliwa
- Kulingana na Cryptography
- Hatua za Kupunguza:
- Tumia mbinu thabiti za kijasusi kwa uzalishaji wa token.
- Hakikisha kutokuwa na utabiri na urefu wa kutosha kuzuia utabiri.
- Zana: Tumia Burp Sequencer kuchambua kutokuwa na utabiri kwa token.
UUID Inayoweza Kukisiwa
- Ikiwa UUIDs (toleo la 1) zinaweza kukisiwa au kutabiriwa, washambuliaji wanaweza kujaribu nguvu ili kuzalisha token za kurekebisha halali. Angalia:
{{#ref}} uuid-insecurities.md {{#endref}}
- Hatua za Kupunguza:
- Tumia toleo la GUID 4 kwa kutokuwa na utabiri au tekeleza hatua za ziada za usalama kwa matoleo mengine.
- Zana: Tumia guidtool kwa uchambuzi na uzalishaji wa GUIDs.
Manipulering ya Jibu: Badilisha Jibu Mbaya na Jibu Nzuri
- Kubadilisha majibu ya HTTP ili kupita ujumbe wa makosa au vizuizi.
- Hatua za Kupunguza:
- Tekeleza ukaguzi wa upande wa seva ili kuhakikisha uadilifu wa jibu.
- Tumia njia salama za mawasiliano kama HTTPS kuzuia mashambulizi ya mtu katikati.
- Marejeo:
- Kosa Muhimu katika Tukio la Bug Bounty la Moja kwa Moja
Kutumia Token Iliyokwisha
- Kuangalia ikiwa token zilizokwisha zinaweza bado kutumika kwa ajili ya kurekebisha nenosiri.
- Hatua za Kupunguza:
- Tekeleza sera kali za kuisha kwa token na kuthibitisha kuisha kwa token upande wa seva.
Token ya Kurekebisha Nenosiri kwa Njia ya Nguvu
- Kujaribu kujaribu nguvu token ya kurekebisha kwa kutumia zana kama Burpsuite na IP-Rotator ili kupita vizuizi vya kiwango kulingana na IP.
- Hatua za Kupunguza:
- Tekeleza kizuizi thabiti cha kiwango na mifumo ya kufunga akaunti.
- Fuata shughuli za kushuku zinazoweza kuashiria mashambulizi ya nguvu.
Jaribu Kutumia Token Yako
- Kuangalia ikiwa token ya kurekebisha ya mshambuliaji inaweza kutumika pamoja na barua pepe ya mwathirika.
- Hatua za Kupunguza:
- Hakikisha kwamba token zimefungwa kwa kikao cha mtumiaji au sifa nyingine maalum za mtumiaji.
Kuondolewa kwa Kikao katika Kutoka/Kurekebisha Nenosiri
- Hakikisha kwamba vikao vinatolewa wakati mtumiaji anapotoka au kurekebisha nenosiri lake.
- Hatua za Kupunguza:
- Tekeleza usimamizi mzuri wa kikao, kuhakikisha kwamba vikao vyote vinatolewa wakati wa kutoka au kurekebisha nenosiri.
Kuondolewa kwa Kikao katika Kutoka/Kurekebisha Nenosiri
- Token za kurekebisha zinapaswa kuwa na muda wa kuisha baada ya hapo zinakuwa batili.
- Hatua za Kupunguza:
- Weka muda wa kuisha unaofaa kwa token za kurekebisha na utekekeleze kwa ukali upande wa seva.
Marejeo
tip
Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za udukuzi kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.