امنیت در ارسال مقدار به تگ img
سلام
این دستورات رو در نظر بگیرید:
کد HTML:
<form method="get">
<input type="text" name="url">
<input type="submit" value="send">
</form>
<?php
if(isset($_GET['url'])){
$mo=htmlentities($_GET['url'], ENT_QUOTES, "UTF-8");
echo "<img src='$mo'>";
}
?>
آیا هکر میتونه به جای آدرس یک عکس آدرس یک فایل جاوا اسکریپت یا php ارسال کنه و سایت رو هک بکنه؟
متشکرم.
نقل قول: امنیت در ارسال مقدار به تگ img
40 تا مشاهده شده کسی نبود این سوالای امنیتی رو جواب بده؟ :متفکر:
آی نفس کش :لبخند:
عرضم به حضورت که محتوای جاوااسکریپت بفرسته حتی هدر content-type: text/javascript بذاره فکر نکنم توی تگ img اجرا بشه! منطقی نیست، با اصول امنیت هم جور نیست، بنده هم ندیدم و نشنیدم تاحالا. مگر اینکه نتیجهء باگ بعضی نسخه های بعضی مرورگرها باشه در طول تاریخ که جاوااسکریپت رو اینطوری اجرا کنن، که اونم مسئولیت و مشکل شما بحساب نمیاد بطور معمول.
اما فایل php هم که دو حالت داره، یا فایل روی سایت خودته و با دادن آدرسش از طرف هکر اجرا میشه، که بی معنیه چون اگر آدرس اون فایل رو داشته باشه میتونه بصورت مستقیم در مرورگر وارد کنه یا با روشهای دیگر هم اجرا کنه و اگر این عمل مشکلی داشت که الان هیچ سایتی امن نبود، حالت دوم اینکه فایل روی سایت دیگری باشه که اونوقت هم روی اون سایت اجرا میشه و خروجیش به تگ img میره که بازم دلیلی نداره بتونه کاری بکنه.
بهرحال نگاه کن مثلا همین فروم مگه اجازه نمیده ملت در پست هاشون عکس درج کنن با URL های دلخواه؟ مشکی هم پیش نمیاد. نه؟ البته بهرحال از همین روش میشه مثلا کاربران یک سایت رو کم و بیش رصد کردن و مثلا IP های اونا رو بدست آورد و یا با تصاویر آلوده به اکسپلویت حفره های مرورگرهای مختلف اونا رو هک کرد، ولی این یک مشکل عمومی در کل اینترنته و اختصاصی سایت شما یا مسئولیت شما نیست، هرچند در کاربردهای حساس ممکنه نیاز باشه درنظر گرفته بشه و براش تمهیدات ویژه بشه یا اصلا ازش اجتناب بشه. خلاصه باید آدم حواسش باشه و هر مورد با توجه به سطح و مسائل و جزییات خاص خودش موارد امنیت خاص خودش رو ممکنه داشته باشه.
راستی اگر اون عکس فقط برای خود کاربر درج کننده به نمایش درمیاد که مشکل خاصی نیست، چون طرف هر بلایی بیاره سر خودش آورده :چشمک:
نقل قول: امنیت در ارسال مقدار به تگ img
اگه سرور php رو بصورت ماژول آپاچی نصب کرده باشه (یعنی mod_php) و یه فایل شل مثل mypic.php.jpg رو آپلود کنه و شما هم ذخیره کنید به همین اسم و موقع نمایش هم با آدرسی که به این اسم ختم میشه توی src تگ img استفاده کنید، اسکریپت php روی هاست شما اجرا میشه.
نقل قول: امنیت در ارسال مقدار به تگ img
نقل قول:
نوشته شده توسط
MMSHFE
اگه سرور php رو بصورت ماژول آپاچی نصب کرده باشه (یعنی mod_php) و یه فایل شل مثل mypic.php.jpg رو آپلود کنه و شما هم ذخیره کنید به همین اسم و موقع نمایش هم با آدرسی که به این اسم ختم میشه توی src تگ img استفاده کنید، اسکریپت php روی هاست شما اجرا میشه.
قرار نیست که کسی فایلی آپلود کنه. کاربری که از سایت بازدید میکنه فقط یه آدرس را وارد میکنه و به تگ img ارسال میشه. همین.
نقل قول: امنیت در ارسال مقدار به تگ img
تنها مشکلی که می تونه به وجود بیاره اینه که آدرس یه شلر یا یه تصویر مخرب رو از یه سایت اکسترنال وارد کنه و حملات سمت کلاینت انجام بده . در غیر این صورت خطر جدی حساب نمیشه .
همیشه سعی کن به صورت دستی آدرس هایی که قراره بگیرید رو چک کنید نه از توابع آماده php . اینطوری می فهمید که برای هر حمله یه راه مقابله ای به صورت دستی گذاشتید .
کلا php امنیتش رو خود برنامه نویس تامین می کنه نه توابع .
نقل قول: امنیت در ارسال مقدار به تگ img
نقل قول:
نوشته شده توسط
رضا قربانی
تنها مشکلی که می تونه به وجود بیاره اینه که آدرس یه شلر یا یه تصویر مخرب رو از یه سایت اکسترنال وارد کنه و حملات سمت کلاینت انجام بده . در غیر این صورت خطر جدی حساب نمیشه .
همیشه سعی کن به صورت دستی آدرس هایی که قراره بگیرید رو چک کنید نه از توابع آماده php . اینطوری می فهمید که برای هر حمله یه راه مقابله ای به صورت دستی گذاشتید .
کلا php امنیتش رو خود برنامه نویس تامین می کنه نه توابع .
منظورتون از حملات سمت کلاینت چیه؟ مثلا طرف چکاری میکنه؟ سمت کلاینت که کاربر بازدید کننده از برنامه هست. میشه بیشتر توضیح بدید؟ بعد حالا ما باید چکار کنیم که مشکلی پیش نیاد؟
نقل قول: امنیت در ارسال مقدار به تگ img
نقل قول:
منظورتون از حملات سمت کلاینت چیه؟ مثلا طرف چکاری میکنه؟ سمت کلاینت که کاربر بازدید کننده از برنامه هست. میشه بیشتر توضیح بدید؟ بعد حالا ما باید چکار کنیم که مشکلی پیش نیاد؟
مثلا اگر اجازه اجرای دستورات جاوااسکریپت رو بدید توی صفحه تون ، به راحتی میشه یه صفحه لاگین گذاشت توی سایتتون و کاربر اطلاعاتشو توش وارد کنه و ... :)
نقل قول: امنیت در ارسال مقدار به تگ img
اگه من دستور زیر رو بذارم برای قسمتی که قراره ادرس عکس گرفته بشه حله؟
یا باید کار دیگه ای هم بکنم؟
من نمیدونم باید چکار بکنم تا این مشکلی که شما میگید پیش نیاد.
نقل قول: امنیت در ارسال مقدار به تگ img
بنظرم مشکلی پیش نمیاد، حتی اگه ادرس ی شل رو هم بفرسته، خوب نمیتونه روی سایت شما کاری بکنه! فقط توی سایت شما داره لود میشه و فقط واسه همون کاربر لود میشه! چیزی نیست.نگران نباشید :متفکر: