با سلام خدمت دوستان عزیز.
در این تاپیک به بحث ، بررسی و آموزش Patch کردن باگ Sql Injection پرداخته میشود.
اولین روش که از نظر بنده بدین شرح است:
گاهی اوقات ، برای نمایش اطلاعات بوسیله query ، یک متغیر را به روش های Post و Get مقدار دهی کرده ، سپس آن را در query استفاده مینماییم ، که اگر ورودی پاک سازی نشود یا نوع آن تعیین نشود ، ممکن است باگ Sql Injection را ایجاد گردد.
در مواقعی که نوع ورودی ما(متغیر) عددی است ، میشود با اضافه کردن intval قبل از متغیر ، از بوجود آمدن این باگ جلوگیری کرد.
مثال :
قبل از Patch:
[php]$postid=$_GET['post'];
mysqli_query("SELECT * FROM `post` WHERE `id` = '$postid'");[/php]
بعد از Patch :
[php]$postid=intval($_GET['post']);
mysqli_query("SELECT * FROM `post` WHERE `id` = '$postid'");[/php]
لطفا اگر راه و روشی مد نظر دوستان است ، مطرح نمایند.
همچنین اگر در مورد این روش نیز مشکل و ابهامی وجود دارد ، لطفا آن را نیز مطرح نمایید.
ارادتمند 3is@
در این تاپیک به بحث ، بررسی و آموزش Patch کردن باگ Sql Injection پرداخته میشود.
اولین روش که از نظر بنده بدین شرح است:
گاهی اوقات ، برای نمایش اطلاعات بوسیله query ، یک متغیر را به روش های Post و Get مقدار دهی کرده ، سپس آن را در query استفاده مینماییم ، که اگر ورودی پاک سازی نشود یا نوع آن تعیین نشود ، ممکن است باگ Sql Injection را ایجاد گردد.
در مواقعی که نوع ورودی ما(متغیر) عددی است ، میشود با اضافه کردن intval قبل از متغیر ، از بوجود آمدن این باگ جلوگیری کرد.
مثال :
قبل از Patch:
[php]$postid=$_GET['post'];
mysqli_query("SELECT * FROM `post` WHERE `id` = '$postid'");[/php]
بعد از Patch :
[php]$postid=intval($_GET['post']);
mysqli_query("SELECT * FROM `post` WHERE `id` = '$postid'");[/php]
لطفا اگر راه و روشی مد نظر دوستان است ، مطرح نمایند.
همچنین اگر در مورد این روش نیز مشکل و ابهامی وجود دارد ، لطفا آن را نیز مطرح نمایید.
ارادتمند 3is@