Cu ajutorul lui @AlexH si @Jeliu Mihai Bogdan au postat pe forum cateva websiteuri iar la cateva dintre ele am observat o anumite vulnerabilitate. Astfel am sa va arat cum puteti face cumparaturi online prin PayPay sau alte metode de pe website-uri in care programatorul sau sau firma nu mai intretine website-ul.
pliante.ceconii.ro.
Websiteul selectat isi prezinta flyerele si pliantele intrun tabel iar la un mouseover face update la pretul total si TVA. Este draguta idea de a afisa preturile dar la o inspectie mai atenta exista si o vulnerabilitate la JavaScript, dar nu despre asta vom discuta acum.
1. Am dat click pe una dintre optiuni din tabel si ma trasferat pe o pagina de comanda, incare imi arata imaginea de mai jos.
2. Facem inspect code la sectiune de "comanda" si vedem cateva hidden fields.(ca in imaginea de mai jos)
3. Modificatii paramentrii din inputurile hidden, iar la submiterea formului o sa trimiteti valorile voastre nu cele ce erau predefinite la inceput.
Respectang procesul de mai sus, puteti folosii si la PayPal, inainte sa dati click pe "checkout" sau cum se numeste/va numii butonul, verificati daca in pagina exista un <form> si daca aveti inputuri de genul:
Daca modificati a3 value si currency_code value cu valori de genul: a3 value = 0.01 si currency_value = USD, la checkout cu paypal o sa vedeti urlmatoarele, iar la checkout o sa aveti asta:
In concluzie, va recomand sa faceti un reasarch inainte sa scrieti cod sau sa instalati ceva in vreo platforma, fiindca nu conteaza cate de destept este frameworkul sau cat de desteapta este logica de validate a inputurilor daca la checkout eu pot sa imi pun pretul care vreau eu. Astfel de vulnerabilitati am vazut in Open Source Frameworks (Wordpress, Drupal, Joomla, etc..) cat si in .NE, C# sau Java si cod scris de programatori incepatori.
Voi crea si o varianta in limba engleza la mine pe blog.
pliante.ceconii.ro.
Websiteul selectat isi prezinta flyerele si pliantele intrun tabel iar la un mouseover face update la pretul total si TVA. Este draguta idea de a afisa preturile dar la o inspectie mai atenta exista si o vulnerabilitate la JavaScript, dar nu despre asta vom discuta acum.
1. Am dat click pe una dintre optiuni din tabel si ma trasferat pe o pagina de comanda, incare imi arata imaginea de mai jos.
2. Facem inspect code la sectiune de "comanda" si vedem cateva hidden fields.(ca in imaginea de mai jos)
3. Modificatii paramentrii din inputurile hidden, iar la submiterea formului o sa trimiteti valorile voastre nu cele ce erau predefinite la inceput.
Respectang procesul de mai sus, puteti folosii si la PayPal, inainte sa dati click pe "checkout" sau cum se numeste/va numii butonul, verificati daca in pagina exista un <form> si daca aveti inputuri de genul:
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" class="upgradeForm">
...
<input type="hidden" name="a3" value="500.00">
<input type="hidden" name="p3" value="1">
...
<input type="hidden" name="currency_code" value="EUR">
</form>
Daca modificati a3 value si currency_code value cu valori de genul: a3 value = 0.01 si currency_value = USD, la checkout cu paypal o sa vedeti urlmatoarele, iar la checkout o sa aveti asta:
In concluzie, va recomand sa faceti un reasarch inainte sa scrieti cod sau sa instalati ceva in vreo platforma, fiindca nu conteaza cate de destept este frameworkul sau cat de desteapta este logica de validate a inputurilor daca la checkout eu pot sa imi pun pretul care vreau eu. Astfel de vulnerabilitati am vazut in Open Source Frameworks (Wordpress, Drupal, Joomla, etc..) cat si in .NE, C# sau Java si cod scris de programatori incepatori.
Voi crea si o varianta in limba engleza la mine pe blog.