تشيفر رابط الملف بـ encode & md5

كل مايخص سكربتات وتساؤلات لغة PHP
مغلق
Abo Sahar
عضو جديد
مشاركات: 9
اشترك في: 27 إبريل 2010, 00:46
مكان: Shadow

تشيفر رابط الملف بـ encode & md5

مشاركة بواسطة Abo Sahar »

السلام عليكم ورحمة الله وبركاته
كيف حالكم .. ؟ :)
اليوم سوف أضع لكم شرح لـ تشفير رابط الملف مثال:

http://localhost/pages.php?as=file
المراد تشفيرهـ هو file

أول تشفير بـ base64_encode

ملاحظة :
يستطيع الزائر ان يعكس التشفير ويعرف الاسم الملف..
ولكن أنت وذكاءك
تمت كتابة الكود Abo Sahar
والفكرهـ pmoki

الملف الاول index.php

كود: تحديد الكل


<?php
#=======================#
# Code: Abo Sahar & pmoki
#=======================#
$nfile "help"//أسم الملف 
$file base64_encode($nfile); // تشفير الملف 
$get $_GET['as']; // القيت
if (isset($get)) { // أذا وجد شي في القيت
 // الرابط الملف الغير المشفر مع حذف الصيغة 
    
$url base64_decode($get).".php"
    if (
file_exists($url)) { // أذا وجد الملف 
        
include $url// يستدعي الملف
        
echo "<br /><b><a href='.'>Back</a>"// رابط للرجوع الى الخلف
    
}else{ // ما عدا ذلك
        
echo "File Not Found !"// الملف غير موجود
    
}
}else{
    echo
'<a href="index.php?as='.$file.'" title="Please">Plaes</a><br />'// رابط الملف المشفر
}
?>

الملف الثاني help.php

كود: تحديد الكل


<?php
echo "Help Me ! :)";
?>

* * * * * * * * * *

وتشفير الرابط بـ MD5
:: أسطورة التشفير MD5 :: <-- عايش جو أسطورهـ
الملف index.php

كود: تحديد الكل

<?php
#=================#
# Code : Abo Sahar#
#=================#
$file "abosahar";// أسم الملف 
$page $_GET['as'];// أسم القيت
$url $file.".php";//قطع الصغية الملف
if($page == md5($file)){// التحقق من أن القيت يساوي تشفير أسم الملف :)
    
if (file_exists($url)) {// التحقق من وجود الملف
        
include $url;  // الاستدعاء الملف
    
}
}else{
// ما عدا ذلك
    
echo "Empty GET OR Error Name File"// القيت فارغ أو خطاء في أسم الصفحة
}
echo 
'<br /><a href="?as='.md5($file).'">Go</a>  <a href="index.php">Back</a>';  
?>

الملف الثاني abosahar.php

كود: تحديد الكل


<?php
#=================#
# Code : Abo Sahar#
#=================#
echo "Name Page : abosahar.php ...Welcome Abo Sahar :)";
?>

.
.
ملاحظة : لو تم كتابة الرابط كالتالي :
index.php
index.php?as
index.php?as=
سوف يعتبرها كل خطاء وتظهر Empty GET OR Error Name File
فقط يظهر الرابط كالتالي
index.php?as=أسم الملف المشفر بـ md5
.
.
ملاحظة للجميع يستطيع تطوير الفكرة كل فترهـ لكي لا تموت الخلايا المخ :lol:
ومن أراد رؤية المناقشة للموضوع من هنا http://bb.cliprz-php.com/showthread.php?tid=167
الى اللقاء ... أنتظر أقتراحاتكم
saanina
عبدالرحمــــن
مشاركات: 3762
اشترك في: 30 أغسطس 2004, 13:54

رد: تشيفر رابط الملف بـ encode & md5

مشاركة بواسطة saanina »

امممم

كود: تحديد الكل

saanina@saanina-laptop:~$ phpsh
Starting php
type 'h' or 'help' to see instructions & features
php> $file = base64_encode('/etc/passwd');

php> if(file_exists(base64_decode($file))){
 ... include base64_decode($file);
 ... }
root:x:0:0:root:/root:/bin/bash


وكودك فيه .php اممم ينفع ياخذ config.php ;)
Abo Sahar
عضو جديد
مشاركات: 9
اشترك في: 27 إبريل 2010, 00:46
مكان: Shadow

رد: تشيفر رابط الملف بـ encode & md5

مشاركة بواسطة Abo Sahar »

هلا وغلا بـ عبد الرحمن ..
بس لا أدري هل يوجد خطورهـ دالة $include
في if
أقصد جلب ملف من شرط :)
saanina
عبدالرحمــــن
مشاركات: 3762
اشترك في: 30 أغسطس 2004, 13:54

رد: تشيفر رابط الملف بـ encode & md5

مشاركة بواسطة saanina »

الشرط مش هو القضيه , لكن استخدام انكلود من متغير مجلوب من مصدر خارجي كالبوست والقت والكوكيز امر خطير !
لذا يحتاج منك بعض التاكد كـ وضع مصفوفه بالملفات المسموحه والتاكد قبل استخدامها في انكلود !
Abo Sahar
عضو جديد
مشاركات: 9
اشترك في: 27 إبريل 2010, 00:46
مكان: Shadow

رد: تشيفر رابط الملف بـ encode & md5

مشاركة بواسطة Abo Sahar »

أخي عبد الرحمن هل التحقق التالي صحيح

كود: تحديد الكل

$name = basename(__FILE__);
$y = stristr($name,".");
$x = array('php');
if(!is_array($x,$y)){
    die("Error");
}else{
    echo "Good";
}
saanina
عبدالرحمــــن
مشاركات: 3762
اشترك في: 30 أغسطس 2004, 13:54

رد: تشيفر رابط الملف بـ encode & md5

مشاركة بواسطة saanina »

لا اعلم ماعلاقه هذا التحقق بالكود اعلاه !
عموما لتستطيع التحقق من كودك ضع امامك كل السبل المتاحه للمخترق وتفاداها فلا يوجد حل واحد وكل الطرق تؤدي لمكه
مغلق