Jump to content
php.lv forumi

Null Byte injection


007007

Recommended Posts

Jocīgi Tev tur. Iemetu šādu Apache htdocs un viss notiek:

 

<?php

$inc = $_GET['i'] . '.zzz';
var_dump($inc);
include $inc;

 

ņem iekšā visu, kas tajā direktorijā. PHP 5.2.17.

 

Varbūt Tavā gadījumā kaut kādi iestatījumi vai suhosin, vai PHP 5.4 to liedz, katrā gadījumā, pēc kļūdas ziņojuma spriežot, null baits nostrādā, problēma ir ar tā faila atrašanu.

Edited by Mr.Key
Link to comment
Share on other sites

1. tā arī no autora nesapratu - tas inklūdojamais fails ir tur, kur to meklē?

2. šis fails inklūdojas bez _GET, bet "pa taisno"?

 

Inklūdojamais fails tur IR. un kā vēl ir. pilnīgi acīs kož, cik ļoti viņš tur ir..

'Pa taisno' fails inklūdojas bez problēmām.

Link to comment
Share on other sites

Nu bet es taču teicu, ka tur tas nulltais baits joprojām ir, viņš tikai nav redzams ar aci.

 

notestē pats:

 

var_dump(urldecode('fails.txt%00') === 'fails.txt');

 

Kā redzi, izvadīts tiek false, jo tie ir divi pilnīgi dažādi stringi!

 

Piezīmēšu, ka ir dafiga tādu "neredzamo" simbolu, bet tas, ka mēs viņu "neredzam", nenozīmē, ka programma (OS) to ignorēs...

Edited by briedis
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...