View Full Version : سوال امنیتی (قسمت دوم)
internet2
شنبه 28 بهمن 1385, 11:56 صبح
در بعضی سایت های فنی و بزرگ!
به همراه لاگین یه کد امنیتی دیگه هست که به صورت عکس و رندوم می باشد که باید به همراه لاگین تایپ شود
دوستان نمونه کد به همراه لاگین میتوانند ارائه کنند؟
با تشکر
internet2
چهارشنبه 02 اسفند 1385, 16:18 عصر
جناب مدیر چرا هیچکی جواب نمی ده؟
hassan1365
سه شنبه 17 مهر 1386, 05:09 صبح
سلام
منم در این مورد مشکل دارم.اگه ممکنه دوستان راهنمایی کنن.
موفق باشید
hector2000
سه شنبه 17 مهر 1386, 14:06 عصر
تاجایی که من میدونم می توان این کار را در asp پیاده سازی کرد.البته جایی دیده بودم که کامپونت این کار را هم گذاشته بود.ولی اگر نخواهید زیاد این تصویر را کج و ماوج دارید ایجاد کنید زیاد کد نویسی سختی نداره.
internet2
سه شنبه 17 مهر 1386, 15:16 عصر
عزیز من شما در اکٍر پست هات می گی کاری ندارد
یا کدش بذار یا لینک بده یا چیزی نگو!
Bahram0110
سه شنبه 17 مهر 1386, 19:00 عصر
من با asp بلد نیستم
با php بلدم روش کارو می گم برای همهء زبانها یکیه
شما باید یه فایل asp داشته باشید که کد امنیتی رو بسازه
کد هم به این صورت ساخته می شه که یه عدد یا رشته به صورت راندوم می سازیم بعد اونو به توی یه Session ذخیره می کنیم . . .
خروجی این فایل باید یه عکس باشه که با توابع مربوطه :لبخند: در asp باید عکسو بسازین
توی صفحهء لاگین هم باید عکسو نشون بدین (لینک صفحه asp قبلی که ساختین)
مقدارشم که می دونین چجوری چک کنین؟ (session!)
Bahram0110
سه شنبه 17 مهر 1386, 19:44 عصر
به این کار می گن CAPTCHA
" Completely Automated Public Turing Test to Tell Computers & Humans Apart"
نمونه برنامه رو می تونی از این آدرس دریافت کنی :
http://sourceforge.net/projects/asp-captcha
hector2000
سه شنبه 17 مهر 1386, 20:22 عصر
عزیز من شما در اکٍر پست هات می گی کاری ندارد
یا کدش بذار یا لینک بده یا چیزی نگو!
اینم جواب خوبی.من تاحالا تو کدوم پستی این حرف را زدم؟
من با asp بلد نیستم
با php بلدم روش کارو می گم برای همهء زبانها یکیه
شما باید یه فایل asp داشته باشید که کد امنیتی رو بسازه
کد هم به این صورت ساخته می شه که یه عدد یا رشته به صورت راندوم می سازیم بعد اونو به توی یه Session ذخیره می کنیم . . .
خروجی این فایل باید یه عکس باشه که با توابع مربوطه :لبخند: در asp باید عکسو بسازین
توی صفحهء لاگین هم باید عکسو نشون بدین (لینک صفحه asp قبلی که ساختین)
مقدارشم که می دونین چجوری چک کنین؟ (session!)
دوست عزیز روش شما درست است
اگر بخواهید این حروف را زیاد کج و ماوج نشان ندهید راهش همین است
توسط یک تابعی مثلا یک عدد رندوم پنج رقمی تولید کنید.ان را در متغییر session ذخیره کنید(البته در بانک اطلاعاتی و با ذکر ای پی شخص هم میشه) سپس فرم به همراه این عدد رندوم شده را نمایش داده. وبعد از submit شدن فرم عدد ورودی توسط کاربر را با مقدار متغییر session مقایسه کنید اگر برابر بود که حله در غیر اینصورت پیغام خطا را چاپ کنید.
می توانید این متن را در مکانی نمایش دهید(مثلا در یک تگ td)و بکراند ان تگ را یک تصویر دارای پر از خط و شکل نا موزون قرار دهید تا قابل کپی برداری نباشد.همچنین می توانید با استفاده از دستورات اسکریپتی مانع از select شدن متن شوید.
این ساده ترین راه است.راههای دیگری هم هست که البته منوط به استفاده از کامپونتهای بخصوصی است.(مثلا اینکه اصلا شما یک تصویر را در محیط سرور بسازید و سپس ان را به سمت کاربر بفرستید)
با ارزوی موفقیت
Bahram0110
چهارشنبه 18 مهر 1386, 20:00 عصر
اینم جواب خوبی.من تاحالا تو کدوم پستی این حرف را زدم؟
می توانید این متن را در مکانی نمایش دهید(مثلا در یک تگ td)و بکراند ان تگ را یک تصویر دارای پر از خط و شکل نا موزون قرار دهید تا قابل کپی برداری نباشد.همچنین می توانید با استفاده از دستورات اسکریپتی مانع از select شدن متن شوید.
با ارزوی موفقیت
روش شما کاملا اشتباهه
حتما باید متن رو به عکس تبدیل کنیم و بعد نشون بدیم نه اینکه بصورت رشته ای اونو توی خروجی چاپ کنیم
در ضمن اگه بخواب به اسکریپت نویسی تکیه کنی خیلی راحت می شه توی تنظیمات مرورگر اجرای کدهای جاوا اسکریپت رو غیرفعال کرد
hector2000
چهارشنبه 18 مهر 1386, 22:04 عصر
دوست گرامی حق با شماست.من فقط یک مثال ساده را بیان کردم که دوستمون الگوریتم کلی دستشون بیاد وگرنه درسته این روش قابل هک شدن است.
من اون لینکها را دانلود کردم ولی مثل اینکه باید اون فایل dll رجیستر بشه
mosyhey
پنج شنبه 19 مهر 1386, 00:35 صبح
همه مشکل سر این است که این کار ها در asp classic اگر ناممکن نباشد، بسیار دشوار است؛ ورنه در net. و حتی php بسیار آسان می باشد.
مثلاً بهره گیری از همین php اگر سرور پشتیبانی کند در برنامه asp بسیار آسان است. مثلاً آدرس آن عکس را می گذاریم aks.php و به فایل aks.php متنی رندم می فرستیم که خود فایل پی اچ پی عکس را می سازد و به صورت یک عکس نمایش داده می شود. به نظر من این راه راه راحت و مطمینی است.
برای مثال در زیر کدی از php است که جمله "Hi World!" را به صورت عکس با پس زمینه سیاه و فونت سفید نمایش می دهد. تو خود حدیث مفصل بخوان از این مجمل:
<?php
header ("Content-type: image/png");
$string = "Hi World!";
$font = 4;
$width = ImageFontWidth($font) * strlen($string);
$height = ImageFontHeight($font);
$im = @imagecreate ($width,$height);
$background_color = imagecolorallocate ($im, 0, 0, 0);
$text_color = imagecolorallocate ($im, 255, 255,255);
imagestring ($im, $font, 0, 0, $string, $text_color);
imagepng ($im);
?>
این لینک هم تاپیکی هم موضوع با این تاپیک است در پرشین تولز: لینک (http://www.forum.persiantools.com/t42519.html)
البته راه های جالب و ابتکاری دیگری را هم می توان تصور کرد.
Bahram0110
پنج شنبه 19 مهر 1386, 10:12 صبح
http://AccessDeny.net/test/secimg.php
این کدو با پی اچ پی نوشتم
اگثر سایتا هم php رو ساپورت می کنن
$btnpath = "button.png";
$im = imagecreatefrompng ($btnpath);
$txtcolor = ImageColorAllocate ($im, 200, 200, 200);
ImageString($im, 44, 35, 5, $str, $txtcolor);
Header ('Content-type: image/png');
ImagePng ($im);
ImageDestroy ($im);
Bahram0110
پنج شنبه 19 مهر 1386, 10:17 صبح
$str همون متنیه که بصورت راندوم ساختم و می خوام به عکس تبدیلش کنم ، button.png هم یه عکسه که توی background خروجی قرار می گیره
kheybar
یک شنبه 10 آذر 1387, 09:25 صبح
دوست عزیز از تاریخ ارسال این سوال خیلی گذشته و احتمالا تا به حال به جواب رسیده اید. ولی من امروز که دیدم تصمیم گرفتم جواب رو براتون ارسال کنم.
در asp تابعی با نام aspjpg وجود داره و شما به وسیله این تابع به راحتی میتوانید تصویر ایجاد کنید. همانطور که دوستان گفته اند باید یک عدد تصادفی رو ایجاد کنید حال این عدد رو علاوه بر ذخیره در سشن یا هر جای دیگر به صورت یک تصویر نیز ساخته و روی سرور قرار دهید. بعد به کاربر نمایش دهید.
کار با aspjpg بسیار ساده است. شما کافیست از سروری استفاده کنید که این تکنولوژی رو ساپورت کنه و یک سرچ کوچولو در باره aspjpg انجام بدید.
موفق باشید.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.