الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

إنشاء إتصال آمن Https أرجو المساعدة

بدأه Eng.Diamond في 28 نوفمبر 2010 · 4 رد · 840 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

عند برمجة موقع انترنت

أهم شي لازم نراعي موضوع الاتصال الآمن

للحفاظ على الموقع من الهكر

طيب

ممكن حدا يفيدنا بطريقة عمل هذا الاتصال؟

انا بعرف انو بجيب اسماء الأدمين والباسووردات من الداتا بيز وبقارنهن مع الشي اللي بيدخله اليوزر

وعلى اساسها بيقرر اما خطأ او صح وبيحوله للصفحة الأساسية

بس المشكلة انو هي الطريقة غير امنة علما اني استخدم مصفوفة ال post

الرجاء ممن لديه الخبرة المساعدة

مع جزيل الشكر

#2

الإتصال الآمن ليس لها علاقه مباشره مع الهاكر إنما هي للمستخدم , تجعل المستخدم يشعر بالأمان عند إستخدام الموقع خصوصا إذا كان سيدفع عن طريق بطاقه الإئتمان الخاصه به فهذا البروتوكول يقوم بتشفير جميع البيانات الصادره والوارده من المتصفح بتشفير 128 بت , نحن نعلم أن أي كلمه في الشات أو المنتدى أو غيرها يمكن التجسس عليها من خلال مزود خدمة الإنترنت لأنها ستمر عليه أولا ثم تنطلق إلى السيرفر أما في حاله الإتصال الآمن فإنه سيحتاج إلى عشرين سنه أو أكثر حتى يقوم بفك تشفير كلمه

الآن لماذا تريد الإتصال الآمن ؟

للعلم العمليه تحتاج إلى ترخيص وهو مكلف جدا ...

1

CMS Sfhati , Website Generator


نظام إدارة المحتوى صفحتي ... جربه الآن 


 


small-logo.png

#3

السلام عليكم و رحمة الله و بركاته

اوافق تمام الموافقة مع اخونا bastr3 على اجابته بخصوص الاتصال الأمن +1 smile.gif

و بالنسبة للهاكرز من قال ان POST غير امنة ؟؟

هذا يعتمد على قوة برمجة الموقع و قوة حمايته من الهجمات ، الهاكر يمكن ان يخترق الموقع ببساطة حتى مع موجود الاتصال الامن ، و ايضا قد لا يخترق الموقع و لكن يخترق موقع اخر على السيرفر او سكريبت اخر ليتحكم فى المواقع المستضافة جميعا

الاختراق لا يقف عند حد معين ، و لن لتفادى هذا قدر الامكان طبق القاعدة التالية

Never Trust User كالاتى :

1 - تأكد من جميع البيانات التى يدخلها المستخدم

2 - لا تعطى المستخدم اى صلاحيات اكثر من اللازمة لتعامله مع الموقع ، مثلا : يكفى ان نسمح بالاحرف و الارقام و المسافات فقط كإسم للمستخدم

3 - اعتمد اقل الاعتماد على الـ ،Cookies و على جهاز المستخدم

4 - لا تعتمد على اشياء سهلة الخداع مثل HTTP_REFERER فمثل هذه يمكن للهاكر او اى شخص من ان يخدع فيها الموقع بسهولة

5 - مهمة الهاكر الاولى هى البحث عن نقاط ضعف الموقع عن طريق ارسال بيانات لا يتوقعها الموقع لكى يرى كيف سيتعامل مع الموقع لذلك لا تدع الزائر يرى اى اخطاء على موقعك مهما كانت بسيطة و يمكن ذلك ببساطة عن طريق error_reporting(0)

6 - اخفاء الاخطاء عن الزائرين ليس صحيحا ، بل يجب عليك كمدير للموقع مراقبة المواقع و الاخطاء التى تطرأ عليه عن طريق الـ Error Logging و حفظها فى ملف ، هذا الملف يجب حفظه خارج الـ root الخاص بالموقع و يت استدعائه فقط عن طريق سكريبت خاص بالموقع

7 - اهتم بتصاريح الملفات ، بمعنى لا تعطى تصريح الكتابة 7 لكل الملفات و الفولدرات حتى لا تدعى مجال لكتابة ملف shell فى هذه المجلدات او الملفات

8 - استخدم التشفير بالنسبة للبيانات المهمة مثل الارقام السرية للاعضاء ، والتشفير ينقسم الى قسمين Encryption & Hashing ( يمكننا التحدث عنهم ان اردت ) ، فالبتشفير يمكن ان تجعل من البيانات المخترقة كأن لا قيمة لها و هذا يعتمد على خوارزمية التشفير المتبعة

9 - ضع عقبات للمخترق عن طريق تخييب توقعاته و ظنه ، مثلا اذا كنت تستخدم سكريبت VB فمن الممكن تغير مجلد الادراة من admincp الى اسم اخر

10 - ضع جدار على المجلدات التى تتطلب ذلك

و فى المجمل لا تعامل الزائر كصديق مقرب تثق به

كل هذا يحتاج الى مجهود و دقة اكبر اذا فهذا يعتمد على قيمة المعلومات الموجودة بالموقع

1

I don't care how you code , i have my own style and i like it

#4

شكرا لكم على التوضيح

اسمحوا لي أن اعرض لكم الكود الخاص بتسجيل دخول الأدمين

علما ان صفحة التوابع المضمنة تحوي عدد من التوابع الجاهزة التي قمت ببرمجتها مثل الاتصال بقاعدة البيانات والاستعلام

وسؤالي التالي :

عند فتح صفحة انترنت ما بمستعرض الانترنت اكسبولورر نلاحظ في الشريط أسفل الصفحة وجود رمز قفل

هذا الرمز هو ما أحاول الوصول إليه لأني سمعت أن موقعي غير محمي أبداً إن لم يظهر هذا القفل

وفي هذه الحالة ستكون مشكلتي مع كل صفحات الموقع وليس مع هذه الصفحة تحديدا لأن القفل لم يظهر بأي منها

وبالنسبة لكلمة المرور كما ذكرت أخ SemDEv فأي من خوارزميات التشفير تنصحني بها؟

أنا صراحة أعرف فقط MD5

أرجو منكم المساعدة مع خبرتي القليلة

فأنا طالبة وهذا الموقع هو مشروعي

ودمتم بخير

<?
session_start();
require_once ('function.php');
connect();
$admin=query('select * from adminstrator  where id_user=1',true);
$user=$_POST['username'];
$pass=$_POST['password_user'];
if (($user==$admin[user_name]) && ($pass==$admin[password]))
{
	$_SESSION['user_logedin'] = $user;
}
if (!isset($_SESSION['user_logedin']))
{
?>
<table border="0"  bgcolor="#e1e1e1">
<form method="post" action="login.php">
	<tr>
		<td ><img src="images/rating_1.gif"></td>
		<td class="td">الإسم</td>
		<td>
			<input type="text" name="username">
		</td>
	</tr>
	<tr>
		<td ><img src="images/rating_1.gif"></td>
		<td class="td">كلمة المرور</td>
		<td>
			<input type="password" name="password_user">
		</td>
	</tr>
	<tr>
		<td align="center" colspan="2">
			<input type="submit" value="تسجيل دخول">
		</td>
	</tr>	
</form>
</table>
<?
}
else
{
header('location: ./index.php');
}
?>
#5

ان استخدام الاتصال الامن لا يتم بوضع كود برمجى ولكن يتم باستخدام شهادة توثيق من الشركات مقدمة الخدمة

لفهم الموضوع بصور اكبر عند زيارتك لصفحة بريد جوجل جيميل ستجدين ان العنوان يبدأ ب HTTPS ورمز القفل يظهر علي المتصفح المغزى من وراء هذه العمليه هو ان الزائر يتأكد من ان هذا الموقع هو موقع شركة جوجل جيميل وبشهادة شركة التوثيق مقدمة الشهادة الرقمية

وبهذا سيطمئن الزائر ان الموقع هوا الموقع الصحيح الذي يريده

ثانيا الاتصال عن طريق SSL ويتم ايضا بشهادة رقمية كما ذكرت سابقا ويضاف عليها خطوة تشفير البيانات المتبادلة بين الزائر والموقع

لعمل مثل هذه العمليات يلزم وجود شهادة معتمدة من الشركات مقدمة الخدمة ويجب تحميلها علي الويب سيرفر وتعريفها داخل تعريف دومين الموقع

http://www.thawte.com هي شركة من شركات اخري كثيرة تقدم شهادات التوثيق الرقمية وللعلم يمكنك طلب شهادة مجانية وتكون سارية لمدة محددة شهر واحد تقريبا ولديهم ايضا دليل لكيفية تفعيل الشهادة علي معظم انواع الويب سيرفر المشهورة

اما بخصوص MD5 فيمكنك استخدام طريقة Salt المشهورة وتتم عن طريق دمج كلمات اخري وتشفيرها عدة مرات للخروج بكلمة سر غير ممكنة الحل

$pass = $_POST['password'];
$pass = md5($pass);
$pass=$pass.'S3Cr3tKey^%$#%$#';
$pass = md5($pass);
$pass = md5($pass);

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…