Re: Afbeelding van site halen met PHP?
Marcus <mark@ijbema.xs4all.nl> wrote:
> Even een waarschuwing: valideer je input! Zo is je systeem wel erg kwetsbaar!
> http://www.ffii.nl/?page=/etc/passwd
> http://www.ffii.nl/?page=http://www.google.com
Het volgende staat weer in mijn index.php.
Had perongeluk 'rm *' gedaan terwijl het 'rm *~'
moest zijn, dus heb dingen ff uit me browser cache geplukt. Was eventjes de './' vergeten
toe te voegen. (had al een ander draadje hierover geopend :), toch bedankt).
<?
// als er achter index.php staat ?<iets> dan wordt dat hier nagekeken met $<iets>
if ($page) {
if ($page == 'index.php') {
ECHO("Liever niet");
} else {
INCLUDE('./' . $page);
}
} else {
INCLUDE('start_index.inc');
}
?>
--
Grtz,
Jeroen "FF" Heijmans
Re: Afbeelding van site halen met PHP?
"Jeroen FF Heijmans" <news@nospam.ff.fm> wrote:
> http://www.ffii.nl/?page=comic_uf.inc is het resultaat, nu moet ik alleen
> nog ff gaan zoeken waarom het zo lang moet duren. Ik vermoed doordat
> http.php en uri.php te groot zijn voor mijn behoefte?
In 'function read_EntityBody' wordt er lekker traag regel voor regel gelezen
m.b.v. fgets(). Het lezen zou sneller gaan als je bijv. m.b.v. fread() in
ene de gehele CONTENT_LENGTH-lange moot zou lezen, maar dat wil helaas niet
altijd lukken.
groet,
WD
Re: Afbeelding van site halen met PHP?
Jeroen FF Heijmans <news@nospam.ff.fm> wrote:
>> Even een waarschuwing: valideer je input! Zo is je systeem wel erg kwetsbaar!
>> http://www.ffii.nl/?page=/etc/passwd
>> http://www.ffii.nl/?page=http://www.google.com
>
> Het volgende staat weer in mijn index.php.
>
> <?
> // als er achter index.php staat ?<iets> dan wordt dat hier nagekeken met $<iets>
>
> if ($page) {
> if ($page == 'index.php') {
> ECHO("Liever niet");
> } else {
> INCLUDE('./' . $page);
> }
> } else {
> INCLUDE('start_index.inc');
> }
> ?>
Ik hoop dat je nog goed slaapt nadat iemand op het idee komt om de url
als
foo.php?page=%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f% 2e%2e%2f%2e%2e%2fetc%2fpasswd
aan te roepen (voldoende %2e%2e%2f toevoegen indien nodig).
--
Daniel Tryba
Re: Afbeelding van site halen met PHP?
Daniel Tryba <news_nl.internet.www.server-side@canopus.nl> wrote:
> Jeroen FF Heijmans <news@nospam.ff.fm> wrote:
>>> Even een waarschuwing: valideer je input! Zo is je systeem wel erg kwetsbaar!
>>> http://www.ffii.nl/?page=/etc/passwd
>>> http://www.ffii.nl/?page=http://www.google.com
>>
>> Het volgende staat weer in mijn index.php.
>>
>> <?
>> // als er achter index.php staat ?<iets> dan wordt dat hier nagekeken met $<iets>
>>
>> if ($page) {
>> if ($page == 'index.php') {
>> ECHO("Liever niet");
>> } else {
>> INCLUDE('./' . $page);
>> }
>> } else {
>> INCLUDE('start_index.inc');
>> }
>> ?>
>
> Ik hoop dat je nog goed slaapt nadat iemand op het idee komt om de url
> als
> foo.php?page=%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f% 2e%2e%2f%2e%2e%2fetc%2fpasswd
> aan te roepen (voldoende %2e%2e%2f toevoegen indien nodig).
Ik denk dat dat niet zoveel zal uitmaken...
Ik zag na posten dat ik nog een stukje vergeten was namelijk en heb die meteen aangepast.
INCLUDE('./' . $page . '.inc'); staat er nu. En volgens mij kan
../%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2 e%2fetc%2fpasswd.inc niet gevonden worden :)
Toch?
--
Grtz,
Jeroen "FF" Heijmans
Re: Afbeelding van site halen met PHP?
Jeroen FF Heijmans <news@nospam.ff.fm> wrote:
>> Ik hoop dat je nog goed slaapt nadat iemand op het idee komt om de url
>> als
>> foo.php?page=%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f% 2e%2e%2f%2e%2e%2fetc%2fpasswd
>> aan te roepen (voldoende %2e%2e%2f toevoegen indien nodig).
>
> Ik denk dat dat niet zoveel zal uitmaken...
> Ik zag na posten dat ik nog een stukje vergeten was namelijk en heb die meteen aangepast.
>
> INCLUDE('./' . $page . '.inc'); staat er nu. En volgens mij kan
> ./%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2 e%2fetc%2fpasswd.inc niet gevonden worden :)
>
> Toch?
Dat klopt, maar ik heb zelf ook de neiging om de bestanden die ik
include op '.inc' te laten eindigen (en die staan meestal in een 'inc'
directory in de document_root (wat ik ook al bij meerdere personen
gezien heb)). Er blijft dan ook een kans (is nu stukken kleiner)
dat deze bestanden worden geinclude. IMHO wat je mimimaal moet doen is
filteren (zodat via de url dus niet hoger de dir boom ingewandeld kan
worden). Maar nog beter is het whitelisten van bestanden dan wel
directories, realpath lijkt me daar zeer handig voor:
$real=realpath('./'.$page.'.inc');
if(strpos($real,'/var/www/foo/bar/includedir')===0)
{
include($real);
}
else
{
die("Don't fool with me, go away");
}
--
Daniel Tryba
Re: Afbeelding van site halen met PHP?
Jeroen FF Heijmans wrote:
[snip]
> INCLUDE('./' . $page . '.inc'); staat er nu. En volgens mij kan
> ./%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2 e%2fetc%2fpasswd.inc niet gevonden worden :)
>
> Toch?
Laat $page alleen door als het alfanummerieke tekens bevat, en evt. een _.
../%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2 e%2fetc%2fpasswd%00.inc
Kan wel eens nare gevolgen hebben... Er is zelfs een naam voor... hmmm,
vergeten :-(.
John
--
email: mail(at)johnbokma.com (or reply) home: http://johnbokma.com/
UI design tips: http://johnbokma.com/websitedesign/ ~ ICQ 218175426
Re: Afbeelding van site halen met PHP?
John Bokma <postmaster@castleamber.com> wrote:
> Jeroen FF Heijmans wrote:
>
> [snip]
>
>
>> INCLUDE('./' . $page . '.inc'); staat er nu. En volgens mij kan
>> ./%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2 e%2fetc%2fpasswd.inc niet gevonden worden :)
>>
>> Toch?
>
> Laat $page alleen door als het alfanummerieke tekens bevat, en evt. een _.
>
> ./%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2 e%2fetc%2fpasswd%00.inc
>
> Kan wel eens nare gevolgen hebben... Er is zelfs een naam voor... hmmm,
> vergeten :-(.
Ik dacht dat iedereen die met PHP werkte dit soort 'problemen' had, of doe ik iets heel bijzonders ofzo?
--
Grtz,
Jeroen "FF" Heijmans
Re: Afbeelding van site halen met PHP?
Daniel Tryba <news_nl.internet.www.server-side@canopus.nl> wrote:
> Jeroen FF Heijmans <news@nospam.ff.fm> wrote:
>>> Ik hoop dat je nog goed slaapt nadat iemand op het idee komt om de url
>>> als
>>> foo.php?page=%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f% 2e%2e%2f%2e%2e%2fetc%2fpasswd
>>> aan te roepen (voldoende %2e%2e%2f toevoegen indien nodig).
>>
>> Ik denk dat dat niet zoveel zal uitmaken...
>> Ik zag na posten dat ik nog een stukje vergeten was namelijk en heb die meteen aangepast.
>>
>> INCLUDE('./' . $page . '.inc'); staat er nu. En volgens mij kan
>> ./%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2 e%2fetc%2fpasswd.inc niet gevonden worden :)
>>
>> Toch?
>
> Dat klopt, maar ik heb zelf ook de neiging om de bestanden die ik
> include op '.inc' te laten eindigen (en die staan meestal in een 'inc'
> directory in de document_root (wat ik ook al bij meerdere personen
> gezien heb)). Er blijft dan ook een kans (is nu stukken kleiner)
> dat deze bestanden worden geinclude. IMHO wat je mimimaal moet doen is
> filteren (zodat via de url dus niet hoger de dir boom ingewandeld kan
> worden). Maar nog beter is het whitelisten van bestanden dan wel
> directories, realpath lijkt me daar zeer handig voor:
>
> $real=realpath('./'.$page.'.inc');
> if(strpos($real,'/var/www/foo/bar/includedir')===0)
> {
> include($real);
> }
> else
> {
> die("Don't fool with me, go away");
> }
En aangezien natuurlijk iedereen op die manier werkt, zou je zelfs je bestanden niet op .inc moeten laten eindigen maar
op iets geks zoals .echtniet ofzo.
Als it een standaard probleem is, zou je toch verwachten dat er in PHP/apache of wat dan ook een standaard mogelijkheid
is om te zorgen dat men niet boven de opgegeven root-dir kan komen :(
--
Grtz,
Jeroen "FF" Heijmans
Re: Afbeelding van site halen met PHP?
Jeroen FF Heijmans <news@nospam.ff.fm> wrote:
> Als it een standaard probleem is, zou je toch verwachten dat er in PHP/apache of wat dan ook een standaard mogelijkheid
> is om te zorgen dat men niet boven de opgegeven root-dir kan komen :(
Die is er ook: safe_mode
BTW doe eens iets aan je regel lengte.
--
Daniel Tryba
Re: Afbeelding van site halen met PHP?
Jeroen FF Heijmans wrote:
> John Bokma <postmaster@castleamber.com> wrote:
>
>>Jeroen FF Heijmans wrote:
>>
>>[snip]
>>
>>
>>
>>>INCLUDE('./' . $page . '.inc'); staat er nu. En volgens mij kan
>>>./%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2 e%2fetc%2fpasswd.inc niet gevonden worden :)
>>>
>>>Toch?
>>
>>Laat $page alleen door als het alfanummerieke tekens bevat, en evt. een _.
>>
>>./%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2e%2f%2e%2 e%2fetc%2fpasswd%00.inc
>>
>>Kan wel eens nare gevolgen hebben... Er is zelfs een naam voor... hmmm,
>>vergeten :-(.
>
>
> Ik dacht dat iedereen die met PHP werkte dit soort 'problemen' had,
Heel veel mensen hebben inderdaad de deur openstaan...
> of doe ik iets heel bijzonders ofzo?
Nee.
Maar ik begreep dat je een inc directory wilt, en een inc voor
gedichten. Je kan dan iets doen als:
als het begint met "gedichten/"
is het stukje na de / puur en volledig alfanummeriek?
ja -> include ("pad/gedichten/" . stukje . ".inc");
nee -> include ("waar denkt u mee bezig te zijn?");
anders is het puur en volledig alfanummeriek?
ja -> include ("pad/inc/" . parameter . ".inc");
nee -> include ("waar denkt u mee bezig te zijn?");
anders
include ("waar denkt u mee bezig te zijn?");
Weet overigens nog een mooi plaatje om naar te redirecten :-D.
Iemand die ik ken had een script om MP3 bestanden te streamen. En als
parameter kon je de bestandsnaam + pad opgeven (zo leek het). En
inderdaad, lolbroeken die dus /etc/passwd gingen meegeven. Die werden
verrast op een leuk plaatje :-D.
John
--
email: mail(at)johnbokma.com (or reply) home: http://johnbokma.com/
UI design tips: http://johnbokma.com/websitedesign/ ~ ICQ 218175426
Re: Afbeelding van site halen met PHP?
Jeroen FF Heijmans wrote:
[snip]
> Als it een standaard probleem is, zou je toch verwachten dat
> er in PHP/apache of wat dan ook een standaard mogelijkheid
> is om te zorgen dat men niet boven de opgegeven root-dir kan komen :(
Die is er, programmeren :-) PHP heeft diverse string operaties en
reguliere expressies.
Overigens, je regels zijn *extreem* lang of ligt dat aan mij?
tip: kijk eens naar Thunderbird:
http://www.mozilla.org/projects/thunderbird/
Volgens sommigen de OE killer :-). (En daar sluit ik mij bij aan).
John
--
email: mail(at)johnbokma.com (or reply) home: http://johnbokma.com/
UI design tips: http://johnbokma.com/websitedesign/ ~ ICQ 218175426
Re: Afbeelding van site halen met PHP?
John Bokma <postmaster@castleamber.com> wrote:
> Jeroen FF Heijmans wrote:
>
> [snip]
>
>> Als it een standaard probleem is, zou je toch verwachten dat
>> er in PHP/apache of wat dan ook een standaard mogelijkheid
>> is om te zorgen dat men niet boven de opgegeven root-dir kan komen :(
>
> Die is er, programmeren :-) PHP heeft diverse string operaties en
> reguliere expressies.
>
> Overigens, je regels zijn *extreem* lang of ligt dat aan mij?
>
> tip: kijk eens naar Thunderbird:
>
> http://www.mozilla.org/projects/thunderbird/
>
> Volgens sommigen de OE killer :-). (En daar sluit ik mij bij aan).
Kijk eens goed in mijn headers :)
En ik snap niet waarom mijn regellengte zo lang blijft staan. Hij staat toch korter ingesteld.
Lijkt wel iets dat zo blijft bij gequote regels.
--
Grtz,
Jeroen "FF" Heijmans
Re: Afbeelding van site halen met PHP?
NNTP-Posting-Host: 172.24.8.16
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news1.news.support.nl 1058639041 19112 172.24.8.16 (19 Jul 2003 18:24:01 GMT)
X-Complaints-To: abuse@news-service.com
NNTP-Posting-Date: Sat, 19 Jul 2003 18:24:01 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.5b) Gecko/20030716 Thunderbird/0.1a
X-Accept-Language: en-us, en
In-Reply-To: <bfc21l$kdm$1@rammelbak.ff.fm>
Cache-Post-Path: halkan.kabelfoon.nl!unknown@kf-nawij-cb02-0007.dial.kabelfoon.nl
X-Cache: nntpcache 3.0.1 (see http://www.nntpcache.org/)
Cache-Post-Path: nf3!unknown@halkan.kabelfoon.nl
X-Cache: nntpcache 3.0.1+tl2 (see http://www.nntpcache.org/)
Xref: nl-news.euro.net nl.internet.www.server-side:30675
Jeroen FF Heijmans wrote:
[erg lange regels, heeeel erg lange regels]
> Kijk eens goed in mijn headers :)
tin :-). Thunderbird doet het ook onder GNU/Linux ;-).
> En ik snap niet waarom mijn regellengte zo lang blijft staan. Hij
> staat toch korter ingesteld. Lijkt wel iets dat zo blijft bij gequote
> regels.
Nee, ook je nieuwe regels zijn erg lang (even aangepast).
John
--
email: mail(at)johnbokma.com (or reply) home: http://johnbokma.com/
UI design tips: http://johnbokma.com/websitedesign/ ~ ICQ 218175426
zwemvlies verzoekschrift ontwikkeling op maat
Re: Afbeelding van site halen met PHP?
John Bokma <postmaster@castleamber.com> wrote:
> Jeroen FF Heijmans wrote:
>
> [erg lange regels, heeeel erg lange regels]
>
>> Kijk eens goed in mijn headers :)
>
> tin :-). Thunderbird doet het ook onder GNU/Linux ;-).
Kheb wel MozillaFirebird draaien ;)
Maar ik zit via SSH te werken op een linuxbak en heb geen zin in een
X-oplossing :(
>> En ik snap niet waarom mijn regellengte zo lang blijft staan. Hij
>> staat toch korter ingesteld. Lijkt wel iets dat zo blijft bij gequote
>> regels.
>
> Nee, ook je nieuwe regels zijn erg lang (even aangepast).
Ik kreeg al de tip om het met export COLUMNS=<lengte> te doen,
maar ik start meestel mijn rtin op vanuit TF :(
--
Grtz,
Jeroen "FF" Heijmans
Re: Afbeelding van site halen met PHP?
Jeroen FF Heijmans wrote:
> John Bokma <postmaster@castleamber.com> wrote:
>> Jeroen FF Heijmans wrote:
>>
>> [erg lange regels, heeeel erg lange regels]
>>
>>> Kijk eens goed in mijn headers :)
>>
>> tin :-). Thunderbird doet het ook onder GNU/Linux ;-).
>
> Kheb wel MozillaFirebird draaien ;)
> Maar ik zit via SSH te werken op een linuxbak en heb geen zin in een
> X-oplossing :(
Je kan ook slrn eens proberen :)
Mark