Autorius Tema: Apsauga. Sql ir xpath injections  (Skaityta 343 kartus)

Neprisijungęs Tautvydas

  • Dalyvis
  • **
  • Įrašai: 434
  • Karma: +11/-0
    • Žiūrėti profilį
Apsauga. Sql ir xpath injections
« Įrašytas: 2014-06-04 18:54:00 pm »
Sveiki,

radau tools'ą, kuris skanuoja tinklapį ir randa sql injection'us  kur galima įleisti. Su tuo viskas aišku, mysql_real_escape_string() funkcija apsaugo.

O va xpath injection rodo, kaip nuo jo gintis, ar jis toks pat pavojingas ?

Neprisijungęs Tautvydas

  • Dalyvis
  • **
  • Įrašai: 434
  • Karma: +11/-0
    • Žiūrėti profilį
Ats: Apsauga. Sql ir xpath injections
« Atsakymas #1 Įrašytas: 2014-06-04 19:25:23 pm »
Ir dar toks klausimas, ar čia yra saugumo spraga, ar ne? Nes programa rodo, kad per $_GET['id'] galima sql injection daryti.

Aprašytas tas ID tik vienoje vietoje tame faile:
<?php
$id 
mysql_real_escape_string($_GET['id']);
$query mysql_query("SELECT * FROM pirtys WHERE id=$id ");

// PERZIUROS
if (isset($_GET['id'])){
$queryy "UPDATE pirtys SET perziuros = perziuros+1 WHERE id='$id'";
mysql_query($queryy);

}

Neprisijungęs Lukas Liesis

  • Administratorius
  • Herojus
  • ******
  • Įrašai: 7439
  • Karma: +231/-15
    • Žiūrėti profilį
    • mano CV
Ats: Apsauga. Sql ir xpath injections
« Atsakymas #2 Įrašytas: 2014-06-06 10:57:30 am »
mysql_* funkcijos yra visos nesaugios ir nepatartinos naudoti. busimose php versijose ju isvis nebebus. nenaudok ju, pereik prie pdo

http://code.tutsplus.com/tutorials/why-you-should-be-using-phps-pdo-for-database-access--net-12059

jei naudoji toki framework'a kaip phalcon, tai turi ir galimybe naudoti Object relational mapper (ORM) https://www.youtube.com/watch?v=h7_pPJGdwGw

http://docs.phalconphp.com/en/latest/reference/models.html
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Manualai.lt Facebooke
serveriai.lt 50% nuolaida!
Free Hosting
Free Templates

Neprisijungęs justinas

  • Naujokas
  • *
  • Įrašai: 164
  • Karma: +16/-3
    • Žiūrėti profilį
Ats: Apsauga. Sql ir xpath injections
« Atsakymas #3 Įrašytas: 2014-06-07 22:18:14 pm »
O tu bent naudoji XPath? Nes gal iš oro išbūrė ta geroji programa :)

O mysql'ui naudok PDO. Su prepared statements, aišku. (Luko duotas tutorialas – nelabai, nes irgi naudoja escapinimą, vietoj prepared statements).

http://wiki.hashphp.org/PDO_Tutorial_for_MySQL_Developers

Manualai.lt Forumas

Ats: Apsauga. Sql ir xpath injections
« Atsakymas #3 Įrašytas: 2014-06-07 22:18:14 pm »

Neprisijungęs ganjabest

  • Dalyvis
  • **
  • Įrašai: 965
  • Karma: +41/-1
  • Povilas Stankevičius
    • Žiūrėti profilį
Ats: Apsauga. Sql ir xpath injections
« Atsakymas #4 Įrašytas: 2014-06-08 01:35:18 am »
Isvis siulau, nezaisti su tokiais dalykais daugiau ir pradeti naudoti normalius framework'us, kur viskas jau sutvarkyta ir nereikia nieko isradinet papildomai arba tiesiog naudoti sutvarkytas PDO, mysqli(pvz meekroDB) klases. Nu aisku, jeigu dar tik mokinies, tai pagrindus reikia moketi, kas kaip vyksta.
« Paskutinį kartą keitė: 2014-06-12 18:41:12 pm sukūrė ganjabest »
Visi žmonės kaip žmonės - tik aš vienas kaip dievas!

Neprisijungęs Tautvydas

  • Dalyvis
  • **
  • Įrašai: 434
  • Karma: +11/-0
    • Žiūrėti profilį
Ats: Apsauga. Sql ir xpath injections
« Atsakymas #5 Įrašytas: 2014-06-08 18:32:16 pm »
Tas pdo visai nieko atrodo, tai nuo šiol su juo bandysiu naudotis. Dėkui.


O dėl to Xpath, tai jo nenaudoju, kas tas yra ir kaip jis veikia?

Neprisijungęs justinas

  • Naujokas
  • *
  • Įrašai: 164
  • Karma: +16/-3
    • Žiūrėti profilį
Ats: Apsauga. Sql ir xpath injections
« Atsakymas #6 Įrašytas: 2014-06-10 09:19:15 am »
Tas pdo visai nieko atrodo, tai nuo šiol su juo bandysiu naudotis. Dėkui.


O dėl to Xpath, tai jo nenaudoju, kas tas yra ir kaip jis veikia?
https://lt.wikipedia.org/wiki/XPath

Nesigilinant per daug į specifiką, panašiai, kaip CSS selektoriai HTML dokumentui, tai XPath selektoriai XML'ui - ištraukti info tam tikru keliu. Jei nenaudoji, tai nėra kaip tau jį ir įkišti. Tik kur nėra escapinimo, ten gali verkt ir dėl XPath, ir dėl kokios nori injekcijos :)

Manualai.lt Forumas

Ats: Apsauga. Sql ir xpath injections
« Atsakymas #6 Įrašytas: 2014-06-10 09:19:15 am »