abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

    dnes 11:00 | IT novinky

    Byla představena nová Arduino deska Arduino UNO R4 s 32bitovým MCU RA4M1 (Arm Cortex-M4). Desku lze zatím získat pouze v rámci early access programu.

    Ladislav Hagara | Komentářů: 0
    včera 18:33 | Nová verze

    Operační systém MidnightBSD, fork FreeBSD optimalizovaný pro desktop s prostředím Xfce, byl vydán ve verzi 3.0. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 2
    včera 18:22 | IT novinky

    Na GOG.com běží Spring Sale. Při té příležitosti lze získat zdarma počítačovou hru Neurodeck: Psychological Deckbuilder (ProtonDB).

    Ladislav Hagara | Komentářů: 0
    25.3. 12:33 | Komunita

    Alex Ellis upozornil 15. března, že firma Docker se chystala zrušit bezplatný hosting open-source projektů na Docker Hubu. Po vlně odporu se představitelé firmy omluvili a posléze byl původní záměr odvolán.

    Fluttershy, yay! | Komentářů: 29
    25.3. 07:00 | IT novinky

    Ve věku 94 let zemřel Gordon Moore, mj. spoluzakladatel společnosti Intel a autor Moorova zákona.

    Ladislav Hagara | Komentářů: 1
    24.3. 17:11 | Nová verze

    Mercurial (Wikipedie), software pro SCM (Source Code Management), byl vydán ve verzi 6.4. Přehled novinek v poznámkách k vydání. Ve dnech 5. až 7. dubna proběhne konference Mercurial Paris.

    Ladislav Hagara | Komentářů: 0
    24.3. 11:55 | IT novinky

    Byly rozdány Ceny Velkého bratra (Big Brother Awards) za rok 2022 pro největší slídily pořádané nevládní organizací Iuridicum Remedium. Dlouhodobý slídil: Microsoft. Firemní slídil: Seznam. Úřední slídil: Nejvyšší správní soud. Výrok Velkého bratra: Marian Jurečka. Pozitivní cena: NoLog.

    Ladislav Hagara | Komentářů: 11
    24.3. 11:11 | Zajímavý projekt

    Byla představena online vzdělávací platforma Ada Computer Science pro učitele, studenty a kohokoli, kdo se zajímá o informatiku. Stojí za ní Raspberry Pi Foundation a Univerzita v Cambridgi.

    Ladislav Hagara | Komentářů: 0
    24.3. 09:11 | Bezpečnostní upozornění

    GitHub má nový RSA SSH klíč. Předchozí soukromý klíč byl krátce vystaven na GitHubu.

    Ladislav Hagara | Komentářů: 0
    24.3. 08:55 | IT novinky

    Společnost Framework Computer představila (YouTube) nové modulární notebooky: Laptop 13 s Intel Core nebo AMD Ryzen a Laptop 16 (YouTube).

    Ladislav Hagara | Komentářů: 0
    Používáte WSL (Windows Subsystem for Linux)?
     (74%)
     (12%)
     (4%)
     (10%)
    Celkem 331 hlasů
     Komentářů: 4, poslední 24.3. 06:42
    Rozcestník


    Dotaz: Jak se branit proti SQL injection flaw in the php coding.

    26.3.2006 08:02 anon123 | skóre: 35 | blog: ganomi
    Jak se branit proti SQL injection flaw in the php coding.
    Přečteno: 257×

    Nekdo me upozornil na SQL injection flaw in the php coding.

    Muzete me navest jak se proti tomu branit.

    Diky

    Odpovědi

    26.3.2006 09:33 t0ms
    Rozbalit Rozbalit vše Re: Jak se branit proti SQL injection flaw in the php coding.
    26.3.2006 12:35 anon123 | skóre: 35 | blog: ganomi
    Rozbalit Rozbalit vše Re: Jak se branit proti SQL injection flaw in the php coding.

    Takze jestli jsem spravne rozumel, tak chyba je v programovani?

    Web je od firmy, takze se obratit na ni?

    Webhosting si delam sam.

    Jakym zpusobem si to muzu sam prekontrolovat?

    26.3.2006 13:01 Thaweg | skóre: 16 | blog: Herbatka | Ostrava
    Rozbalit Rozbalit vše Re: Jak se branit proti SQL injection flaw in the php coding.
    Překontrolovat to jde jednoduše - zkus SQL injection třeba podle výše uvedeného odkazu (nějaký šetrný příkaz, ne zkoušet smazat databázi ;-) ) a buď to aplikace má ošetřeno, podvržený požadavek zahodí a nic zajímavého nebude (správné chování), nebo najdeš díru v aplikaci.
    26.3.2006 13:46 anon123 | skóre: 35 | blog: ganomi
    Rozbalit Rozbalit vše Re: Jak se branit proti SQL injection flaw in the php coding.

    Prominte jsem v tomto nezkuseny. Takze jeste dotaz.

    Cim myslite aplikaci? Je tedy dira v nastaveni MYSQL nebo dira v programingu webu?

    Potreboval bych nejake doporuceni co delat, abych tomu zamezil.

    26.3.2006 17:49 Vladimír
    Rozbalit Rozbalit vše Re: Jak se branit proti SQL injection flaw in the php coding.
    Tady jsou popsány dobré příklady: http://www.unixwiz.net/techtips/sql-injection.html.. Je to anglicky. V podstatě se v PHP doporučuje použít funkce mysql_real_escape_string() pro každou proměnnou přicházející z formuláře.
    26.3.2006 19:33 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak se branit proti SQL injection flaw in the php coding.
    Ono by vůbec nejlepší bylo, kdyby interface pro MySQL v PHP nebyl napsán tak hloupě, aby nutil programátora cpát data od klienta do SQL dotazu…
    27.3.2006 09:25 Dejv | skóre: 37 | blog: Jak ten blog nazvat ... ? | Ostrava
    Rozbalit Rozbalit vše Re: Jak se branit proti SQL injection flaw in the php coding.
    A jak by se teda data od uzivatele ukladala do tabulek? Jsem zacatecnik a dotaz myslim vazne, bez jakekoliv ironie nebo neceho takoveho. Diky za odpoved.

    Dejv
    Pevně věřím, že zkušenější uživatelé mě s mými nápady usměrní a pošlou tam, kam tyto nápady patří...
    27.3.2006 12:56 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak se branit proti SQL injection flaw in the php coding.
    Podívejte se třeba na interface pro InterBase/Firebird, v dohledné době (možná dokonce už teď) by to podobně mělo fungovat i pro PostgreSQL. Funguje to tak, že na příslušném místě SQL dotazu dáte jen zástupný symbol (otazník) a hodnotu předáte zvlášť jako samostatný parametr. Příklad:
      ibase_query($conn, 'update TBL set COL=? where ID=?', $val, $id);
    
    nebo
      $qry = ibase_prepare($conn, 'insert into TBL(COL) values (?)');
      for ($i=1; $i<=100; i++)
        ibase_execute($qry, $i);
      ibase_unprepare($qry);
    
    Když si na to zvyknete, je to podstatně praktičtější a SQL injection nehrozí - dokud nezačnete vkládat data od klienta do dotazu, což ale v naprosté většině případů není potřeba.
    27.3.2006 15:12 Dejv | skóre: 37 | blog: Jak ten blog nazvat ... ? | Ostrava
    Rozbalit Rozbalit vše Re: Jak se branit proti SQL injection flaw in the php coding.
    Hm, obavam se, ze pro hlubsi pochopeni bych se musel do problemu zanorit prilis (vzhledem ke svym znalostem a zkusenostem) hluboko :-). Protoze momentalne nevidim rozdil, jestli zavadna data poslu soucasne s dotazem, nebo jako parametr. Jak rikam - jsem zacatecnik. Mozna taky ne zcela presne rozumim pojmu "SQL injection".

    Ale presto (nebo prave proto) diky za snahu :-)

    Dejv
    Pevně věřím, že zkušenější uživatelé mě s mými nápady usměrní a pošlou tam, kam tyto nápady patří...
    27.3.2006 18:24 Dejv | skóre: 37 | blog: Jak ten blog nazvat ... ? | Ostrava
    Rozbalit Rozbalit vše Re: Jak se branit proti SQL injection flaw in the php coding.
    Stydim se jak male decko pristizene v obchode pri kradezi cokolady a sypu si popel na hlavu. Stacilo si precist odkaz v prvni reakci a vse je hned jasnejsi. Jak "SQL injection", tak duvod predavani parametru "jako parametru".

    Dejv
    Pevně věřím, že zkušenější uživatelé mě s mými nápady usměrní a pošlou tam, kam tyto nápady patří...
    27.3.2006 10:57 podlesh | skóre: 38 | Freiburg im Breisgau
    Rozbalit Rozbalit vše Re: Jak se branit proti SQL injection flaw in the php coding.
    SQL injection flaw je docela normální bug, chyba v aplikaci.
    28.3.2006 01:04 Franta B.
    Rozbalit Rozbalit vše Re: Jak se branit proti SQL injection flaw in the php coding.
    Zajimalo by me jak mam udelat injection v dotazu
    $query = "SELECT * FROM users WHERE username='$_REQUEST[username]' AND password='$_REQUEST[password]'";
    
    do password jsem dal: ' OR 'a'='a a funguje to, ale jak zjistim data z tabulky?
    28.3.2006 02:52 billgates | skóre: 27
    Rozbalit Rozbalit vše Re: Jak se branit proti SQL injection flaw in the php coding.
    Musite si najst nejaky prikaz, ktory vypise riadky z tabulky, napriklad ak je to obchod, tak nejaky zoznam tovaru alebo zoznam ludi a ten potom takymto sposobom zmenit.
    28.3.2006 14:52 Franta B.
    Rozbalit Rozbalit vše Re: Jak se branit proti SQL injection flaw in the php coding.
    Mohl byste mi dat nejaky priklad? treba jak vypisu uzivatele pomoci injekce z tabulky users v tomhle prikladu?
    $query = "SELECT * FROM users WHERE username='$_REQUEST[username]' AND password='$_REQUEST[password]'";
    28.3.2006 02:50 billgates | skóre: 27
    Rozbalit Rozbalit vše Re: Jak se branit proti SQL injection flaw in the php coding.
    Ja vo svojich skriptoch vzdy pouzivam nasledujucu konstrukciu:
    function myentities($text)
    {
      $bad=array('&','"',"'");
      $good=array('&amp;','&quot;','&#039;');
      $text=str_replace($bad,$good,$text);
      return $text;
    }
    
    function mysprintf($format) {
      $args = func_get_args();
      unset($args[0]);
      foreach($args as $id => $v){
        $args[$id]=myentities($v);
      }
      return vsprintf($format,$args);
    }
    
    a volanie SQL nasledovne:
    $prikaz=mysprintf("SELECT * FROM login WHERE login='%s' AND pass=SHA1('%s');",$_POST['login'],$_POST['pass']);
    $q=mysql_query($prikaz);
    
    Vo funkcii myentities mam casto este dalsie znaky, ktore potrebujem pri nacitani konvertovat. Kedze som C-ckar, stale pouzivam konstrukcie s sprintf, takze je to pre mna minimalna zmena a uplne mi to vyhovuje.
    28.3.2006 02:50 billgates | skóre: 27
    Rozbalit Rozbalit vše Re: Jak se branit proti SQL injection flaw in the php coding.
    Bolo to myslene ako sposob ocharny proti SQL injection.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.