فایلکو

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

فایلکو

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

مبحث نصب و راه اندازی DNS SERVER

اختصاصی از فایلکو مبحث نصب و راه اندازی DNS SERVER دانلود با لینک مستقیم و پر سرعت .

مبحث نصب و راه اندازی DNS SERVER


مبحث نصب و راه اندازی DNS SERVER

مبحث نصب و راه اندازی DNS SERVER

نوع قالب بندی » پاورپوینت

تعداد اسلاید : 117


دانلود با لینک مستقیم


مبحث نصب و راه اندازی DNS SERVER

دانلودمقاله Smtp server

اختصاصی از فایلکو دانلودمقاله Smtp server دانلود با لینک مستقیم و پر سرعت .

 

 


خلاصه درس: در این درس می‌آموزیم که با پورت ۲۵ (SMTP) ارتباط برقرار کنیم و از آن برای ارسال Fake Mail استفاده کنیم.
◊ پورت ۲۵ چیست؟
پورت ۲۵ برای ارسال E-mail به‌کار می‌رود. این پورت از پروتکل SMTP برای این کار استفاده می‌کند. نکته مهم آن است که این پروتکل توانایی خواندن E-mail را ندارد و فقط می‌تواند E-mail بفرستد.
حالا سوالی که پیش می‌آید که چه برنامه‌هایی روی سرور پورت ۲۵ را باز می‌کند؟
همان‌طور که گفتم، SMTP فقط یک پروتکل است (نه یک برنامه) و از نظر لغوی مخفف عبارت Simple Mail Transfer Protocol است. برنامه‌ای که پورت ۲۵ را باز می‌کند تا بتوان از طریق آن E-mail ارسال کنیم، SMTP Server می‌گویند. SMTP Server یک عبارت کلی است، برای این نوع برنامه‌ها. حالا خود SMTP Server انواع مختلف دارد که مشهورترین‌هایشان، SMail، SendMail، ESMTP MAIL Service و ... هستند. نکته مهم این است که تفاوت زیادی نیست که سرور مورد نظر ما از کدامیک از این نرم‌افزارها استفاده می‌کند، زیرا اصول کار با آنها یکی است.
برای صحبت کردن با پورت ۲۵ اول باید یک Server پیدا کنیم که پورت ۲۵ در آن باز باشد (اگرچه در اکثر سرورها پورت ۲۵ باز است). بعد باید طبق معمول از telnet یا nc برای ارتباط استفاده کنیم.
پورت ۲۵ از دیدگاه یک هکر چه کاربردی دارد؟
یک هکر از پورت ۲۵ برای ارسال Fake Mail (میل ناشناس، میل تقلبی) استفاده می‌کند. دلیل آن است که درصد بسیار بالایی از SMTP Server ها اهمیتی نمی‌دهند که شما کی هستید و به کی می‌خواهید میل بزنید، بلکه فقط کار خود را می‌کنند.

 


◊ چگونه یک SMTP سرور پیدا کنیم
پیدا کردن SMTP سرور کار سختی نیست. اگرچه از اکثر SMTP Server ها می‌توان به هر کسی E-mail زد ولی من همیشه توصیه می‌کنم از SMTP Server ی استفاده کنید که مربوط به به Mail Box قربانی است. برای مثال فرض کنید که می‌خواهید به کسی fake mail بزنید و اون شخص mail box اش در یاهو است. در این حالت من ترجیح می‌دم که از SMTP Server های سرور یاهو استفاده کنم ( اگرچه از هر سرور دیگری برای این کار می‌تونم استفاده کنم ).
اگرچه ما عبارت fake mail (ناشناس) برای این نوع E-mail ها استفاده می‌کنیم ولی باید توجه کنید که در مواردی خاص می‌شود شما را ردیابی کرد. به عنوان مثال ip شما از مواردی است که همراه با E-mail ارسال می‌شود. پس در انتخاب SMTP Server باید دقت کرد (بعضی SMTP Server ها هستند که حتی ip شما را ارسال نمی‌کنند و این یعنی نهایت ناشناسی).
نکته بعدی این است که بعضی SMTP Server ها یه کم باهوش عمل می‌کنند به طوری که در نهایت E-mail ارسالی حداقل برای اشخاص حرفه‌ای ماهیتش (fake بودن) قابل تشخیص خواهد بود (یعنی می‌فهمند که این یک fake mail است نه یه E-mail واقعی). پس این هم در انتخاب SMTP Server مهم است که باید از SMTP Server هایی استفاده کنیم که در نهایت حماقت باشند!
بازم یه نکته دیگه، SMTP Server در نهایت روی یک سرور قرار دارد پس در نهایت آدرس آن چیزی مثل mail.far30.com، mx01.hotmail.com و ... خواهد بود.
حالا که معیارهای مهم برای انتخاب SMTP Server را شناختیم، حالا وقتش است که عملا یه SMTP Server پیدا کنیم:
۱- یکی از ساده‌ترین راه‌ها استفاده از سایت‌هایی مثل google است که با جستجوی عبارت SMTP Server هزاران سرور پیدا کنیم.
۲- استفاده از SMTP Server سایت دانشگاه‌ها. تجربه برام ثابت کرده که این روش یکی از بهترین‌هاست.
۳- استفاده از یک سری SMTP Server های مشهور. این روش هم بد نیست.

 

حالا روش را عملا نشونتون می‌دم:
اول باید یک سرور را مشخص کنید که از طریق آن می‌خواهید fake mail را بفرستید. همان‌طور که قبلا گفتم اگر مثلا می‌خواهید برای یه نفر که mail box او در یاهو است، fake mail بزنید، سرور را همان سرور در نظر بگیرید یعنی از خود yahoo.com برای ارسال استفاده کنید.
بعد باید ببینید که در این سرور کدام subdomain باید استفاده کنید (یعنی اینکه SMTP Server سرور آدرسش، mail.yahoo.com است یا mx.yahoo.com است یا چیز دیگر). برای این کار دو روش را می‌گم:
۱- از nslookup استفاده کنیم:
با nslookup قبلا آشنا شده‌اید. اول باید با whois یک name server پیدا می‌کردیم و بعد از طریق آن سایت را nslookup می‌کردیم (اگر فراموش کرده‌اید، درس ۵ و ۶ را دوباره بخوانید. مثلا می‌خواهم SMTP Server مربوط به far30.com را پیدا کنم. اول یک whois می‌کنم و می‌بینم که name server سایت، s1.sazin.com و s2.sazin.com است. حالا nslookup می‌کنم و آن سطر هایی را می‌خوانم که با نام MX مشخص شده است و ۲ تا آدرس می‌بینم که عبارتند از far30.com و mail.far30.com پس SMTP Server های سایت far30.com همین دو آدرس است. در نتیجه اگر بخواهم از سایت far30.com برای ارسال fake mail استفاده کنم، از این آدرس‌ها باید بهره‌ گیرم.
۲- استفاده از بعضی سایت‌های خاص:
یکی از این سایت‌ها http://www.mob.net/~ted/tools/mx.php3 است. در این سایت، نام سایت را می‌نویسید و دکمه lookup را کلیک می‌کنید. مثلا من نوشتم yahoo.com و به نتایج زیر رسیدم:
Domain Server: ns.mob.net
yahoo.com mail is handled by 5 mx4.mail.yahoo.com.
yahoo.com mail is handled by 1 mx1.mail.yahoo.com.
yahoo.com mail is handled by 1 mx2.mail.yahoo.com.

 

Domain Server: ns.cw.net
yahoo.com mail is handled by 5 mx4.mail.yahoo.com.
yahoo.com mail is handled by 1 mx1.mail.yahoo.com.
yahoo.com mail is handled by 1 mx2.mail.yahoo.com.

 

مشخص است که SMTP Server های سایت yahoo.com عبارتند از: mx1.mail.yahoo.com , mx2.mail.yahoo.com , mx4.mail.yahoo.com
اگرچه این روش راحت‌تر به نظر می‌رسد ولی شما را یه انسان مصرفی بار می‌آورد نه خلاق !

 


◊ با پورت ۲۵ صحبت کنیم
حالا که SMTP Server دارم می‌تونم fake mail بزنم.
به عنوان مثال می‌خواهم به آدرس target@yahoo.com یک fake mail بزنم که شخص فکر کند که Email از آدرس me@hotmal.com آمده است. (دقت کنید که این آدرس هر چیزی می‌تواند باشد. مثلا می‌توانید از طرف Bill Gates به یه نفر E-mail بزنید). و می‌خواهم Subject آن باشد: arze salam و متن پیغام این باشد: bah bah sam aleikum
برای این کار :
۱- چون mail box قربانی در سایت یاهو است، پس من هم بهتر است از SMTP Server خود یاهو استفاده کنم (بهتر است ولی اجباری در آن نیست). SMTP Server های یاهو را در قسمت قبلی به دست آوردم. مثلا از mx1.mail.yahoo.com استفاده می‌کنم.
۲- باید از telnet یا nc برای برقراری ارتباط استفاده کنم. الان می‌خوام از telnet استفاده کنم. پس باید دستور زیر را به‌کار برم (دقت کنید که از اسم SMTP Serevr استفاده کردم).
telnet mx1.mail.yahoo.com 25
بعد از تایپ دستور، صفحه پاک می‌شود و جواب می‌گیرم:
220 YSmtp mta499.mail.yahoo.com ESMTP service ready
۳- حالا دستور زیر را می‌نویسم. دقت کنید که چون از telnet استفاده می‌کنید، چیزهایی را که تایپ می‌کنید، نمی‌بینید و اینکه نمی‌تونید از دکمه BackSpace استفاده کنید (پس در تایپ‌کردن دقت کنید!):
HELO yahoo.com
این دستور یعنی من از کجا هستم (یعنی شما که می‌خواهید میل بزنید، کی هستید). اینجا من گفتم که من از سایت yahoo.com هستم!! معمولا مهم نیست که جلوی عبارت HELO نام چه سایتی را بنویسید چون اکثرا چک نمی‌شود. و جواب می‌شنوم:
250 mta499.mail.yahoo.com
۴- حالا باید مشخص کنم که E-mail فرستنده (یعنی من) چیست. چون می‌خواهم E-mail از طرف me@hotmail.com به نظر بیاید، می‌نویسم:
MAIL FROM:
و جواب می‌گیرم:
250 sender ok
۵- حالا باید بگم که این E-mail به چه آدرس ارسال شود که در این مثال، target@yahoo.com است. باید بنویسم:
RCPT TO:
و جواب می‌شنوم:
250 recipient ok
۶- حالا باید بنویسم،
DATA
و Enter بزنم و جواب می‌شنوم:
354 go ahead
اینجا وقت تایپ کردن یک سری چیز‌های اساسی است. اول می‌نویسم،
From: abbas akbari
این همان اسمی است که به عنوان Sender یا همان From دیده خواهد شد. من‌ خواستم که به اسم abbas akbari دیده شود. حالا می‌نویسم:
Subject: arze salam
این هم در آن E-mail به عنوان subject خواهد بود. حالا موارد زیر را می‌نویسم (که اختیاری است):
MIME-Version: 1.0
Content-Type: text/plain;
و بعد دوتا !! Enter زده و متن نامه را می‌نویسم:
bah bah
sam aleikum
.
دقت کنید که یک کاراکتر . (نقطه) در سطر آخر نوشتم و بعد Enter زدم. با این روش به پورت ۲۵ حالی می‌کنم که متن نامه تمام شده‌است و نامه ارسال شود. متعاقبا پیغامی می‌گیرم که بیانگر ارسال E-mail است.
250 ok dirdel
۷- می‌نویسم:
QUIT
تا ارتباط قطع شود و از telnet خارج بشم.

 

اول توصیه می‌کنم که یک fake mail واسه خودتون بفرستید تا ماهیت fake mail را درک کنید.
مسئله بعدی آن است که در قسمتی target@yahoo.com نوشته شده است، شما باید این سطر را تغییر داده و E-mail قربانی خودتان در یاهو را بنویسید!

 


◊ همان کار با nc
برای انجام این کار با nc اول همان دستورات بالا را در فایلی مثلا به اسم fake.txt می‌نویسیم :

 

HELO yahoo.com
MAIL FROM:
RCPT TO:
DATA
From: abbas akbari
Subject: arze salam
MIME-Version: 1.0
Content-Type: text/plain;

 

bah bah
sam aleikum
.
QUIT
حالا فایل را ذخیره کرده و از دستور زیر استفاده می‌کنم:
nc -v mx1.mail.yahoo.com 25 < fake.txt
همین!

 


◊ Fake mail در صندوق پستی به چه شکلی ظاهر می‌شود؟
این قسمت رو در مورد mail box های yahoo و hotmail توضیح می‌دم.

 

اینکه این نوع E-mail ها به چه شکلی ظاهر می‌شود، بستگی به این دارد که تنظیمات mail box قربانی در چه حالتی تنظیم شده باشد. در حالت معمول فقط تعدادی از header ها نمایش داده می‌شود. در این حالت معمولا fake mail مثل یک E-mail معمولی دیده می‌شود.
From: "abbas akbari"
Subject: arze salam

 

bah bah
sam aleikum
در mail box ها می‌توان تنظیمات را طوری انجام داد که تمام header ها نمایش داده شوند.
برای اینکار در yahoo از منویی که بالای صفحه است، منوی Mail را باز کرده و گزینه Options را کلیک می‌کنیم. در صفحه‌ای که می‌آید، روی گزینه General Preferences کلیک کنید. در صفحه‌ای که می‌آید، از قسمت Message در قسمت Headers گزینه ... Show all را انتخاب می‌کنیم و دکمه Save را از پایین صفحه کلیک می‌کنیم. حالا همان میل را دوباره باز می‌کنم و مشاهده می‌کنم که به شکل زیر ظاهر می‌شود:
From abbas akbari Mon Jan 6 05:56:37 2003
X-Apparently-To: ali1000vali2000@yahoo.com via 216.136.129.53; 06
Jan 2003 05:56:37 -0800 (PST)
Return-Path:
Received: from 217.218.84.27 (HELO yahoo.com) (217.218.84.27) by
mta576.mail.yahoo.com with SMTP; 06 Jan 2003 05:56:37 -0800 (PST)
From: "abbas akbari"
Subject: arze salam
MIME-Version: 1.0
Content-Type: text/plain;
Content-Length: 19

 

bah bah
sam aleikum

 

در این حالت می‌توانید ip ارسال کننده را هم ببینید. (سعی کنید که همیشه تنظیمات yahoo mailbox تان به این شکل باشد)
پیام ( 4 نظر )
.: نوشته شد 17:29 در زمانسینا آزادنیا توسط :.

.: درس ۱۷ :. چهارشنبه، 28 خرداد، 1382

- خلاصه درس: در این درس یاد می‌گیریم که با پورت‌ها تعامل داشته باشیم و یاد می‌گیریم که با پورت‌های ۱۳ و ۸ و ۸۰ به کمک telnet و nc صحبت کنیم.

 

 

 

◊ شروع کار با پورت‌ها
الان به جایی رسیده‌ایم که می‌توانیم بحث پورت‌ها را شروع کنیم. اولین نکته‌ای که باید بگم این است که ابزاری که به کمک آن با پورت‌ها صحبت می‌کنیم در همه پورت‌ها یکی است ولی هر پورتی زبان مخصوص خود دارد (درست مثل زبان‌های مختلف در جهان که همشون از طریق زبان و دهان ادا می‌شن ولی هر کدام روش خاصی برای ارتباط برقرار کردن دارند). پس ما برای کار با پورت‌ها باید زبان هرکدام را یاد بگیریم.
بحث بعدی این است که وقتی می‌گیم یه پورت بازه باید توجه کنید که برنامه‌ای روی آن کامپیوتر نصب شده و اون پورت را باز کرده است (پورت‌ها خود به خود باز نمی‌شوند). یک سری پورت‌ها توسط خود سیستم‌عامل باز می‌شوند (یعنی به محض نصب سیستم‌عامل که خودش هم درواقع یه نرم‌افزاره) و نیازی نیست که برنامه دیگری برایش نصب کنیم. در مقابل، بعضی پورت‌های دیگر توسط برنامه‌های جانبی باز می‌شوند.
به عنوان مثال وقتی می‌گم که پورت ۲۵ روی یک ip باز است، این معنی را دارد که برنامه‌ای روی اون کامپیوتر خاص وجود دارد که پورت ۲۵ را باز کرده و من وقتی از طریق کامپیوتر خودم با آن پورت کار می‌کنم در واقع دارم با آن برنامه خاص (که اون پورت را باز کرده) صحبت می‌کنم.
حالا یه سوال پیش می‌آد که چرا اصلا یه نرم‌افزار باید پورت باز کنه و اینکه کدام نرم‌افزارها باید پورت باز کنند؟
جواب این است که هر برنامه‌ای که بخواهد از طریق شبکه (یعنی از راه دور اصطلاحا remote) قابل دسترس باشه باید یه پورت باز کنه. پس یک برنامه‌ای که نیازی به برقراری ارتباط شبکه‌ای ندارد (مثلا یه نرم‌افزار گرافیکی) نباید و نشاید که پورت باز کند.

 

باید ببینیم که از طریق چه برنامه‌ای می‌توان با پورت‌ها صحبت کرد ( البته با هرکدام به روش خودشان )؟
برای این‌کار از دو نرم‌افزار به نام‌های telnet و nc استفاده می‌کنیم. telnet که در خود سیستم‌عامل وجود دارد و nc را هم که جلسه قبل داون‌لود کردیم.
حالا چگونه از این دو نرم‌افزارها می‌توان استفاده کنیم؟
۱- استفاده از telnet :
اگر بخواهیم با ip ای به شماره 194.225.184.13 از طریق پورت 25 صحبت کنیم باید بنویسیم:
telnet 194.225.184.13 25
و بعد اینکه ارتباط برقرار شد باید شروع کنیم و از طریق زبان پورت ۲۵ با آن صحبت کنیم.
۲- استفاده از nc :
اگر بخواهیم همان کار را با netcat انجام دهیم، باید بنویسیم:
nc -v 194.225.184.13 25
و بعد از برقراری ارتباط شروع به صحبت کنیم.

 


◊ با پورت ۱۳ صحبت کنیم
نام دیگر اون daytime است و کارش هم اینه که زمان و تاریخ رو در اون کامپیوتر به ما می‌ده. این پورت اصولا خیلی سر راسته. فقط کافیه که بهش وصل شیم تا اطلاعاتشون بیرون بریزه. البته این پورت رو خیلی از کامپیوترها بسته است. (یادتون باشه که وقتی می‌توان با یه پورت کار کرد که باز باشد).
حالا می‌خوایم با پورت ۱۳ از ip شماره 194.225.184.13 صحبت کنم. یکی از این دو دستور را می‌نویسم:
telnet 194.225.184.13 13nc -v 194.225.184.13 13
البته در آن دستورات به جای عدد ۱۳ می‌توان معادلش را نوشت که daytime است.
و جواب می‌شنوم:
11:35:33 AM 10/5/2002
بله، با این پورت ارتباط برقرار کردیم و اطلاعاتش رو دریافت کردیم. این اطلاعات معمولا به درد این می‌خورد که مکان جغرافیایی اون کامپیوتر را حدس بزنیم (البته اگر زمان اون کامپیوتر صحیح باشد). به عنوان مثال این کامپیوتر خاص در ایران است چون ساعتش همزمان با ایران است.

 


◊ با پورت ۷ صحبت کنیم
اسم این پورت echo است. من این پورت رو پورت میمون می‌گم چون هرچی که شما براش بنویسید را تقلید می‌کنه و همان‌ها را براتون پس می‌فرستد. مثلا من به پورت ۷ کامپیوتری با ip شماره 194.225.184.13 تلنت یا nc می‌کنم.
telnet 194.225.184.13 7nc -v 194.225.184.13 7
بعد از برقراری ارتباط، هر چی من بنویسم، اون برام پس می‌فرسته. مثلا اگه تایپ کنم Ali1000 و Enter بزنیم، جواب می‌شنوم، Ali1000 ... خودتون امتحان کنید تا ببینید. برای تمام شدن کار باید دکمه Ctrl+C را فشار دهیم تا این میمون بازی تموم بشه.
پس کار کردن با این پورت هم زیاد سخت نیست.

 


◊ با پورت ۸۰ صحبت کنیم
پورت ۸۰ یکی از مهم‌ترین پورت‌هاست. دنیای وب (صفحات اینترنتی) بر اساس همین پورت کار می‌کنه. توضیح اینکه وقتی به یه سایت وصل می‌شیم و صفحه وب را درخواست می‌کنیم، در واقع مرورگر اینترنتی به پورت ۸۰ اون کامپیوتر وصل می‌شه و اطلاعات رو می‌گیره (البته بعد از گرفتن اطلاعات اون رو تفسیر می‌کنه و به صورت یه صفحه نشون می‌ده - دقت کنید که اطلاعات در واقع به صورت یک سری تگ HTML است ). حالا ما می‌خواهیم با پورت ۸۰ یک کامپیوتر صحبت کنیم ولی به کمک telnet و nc.
اول باید یه connection (اتصال) با پورت ۸۰ برقرار کنیم (مثلا برای سایت hotmail.com باید بنویسم):
telnet www.hotmail.com 80nc -v www.hotmail.com 80
پس اول باید یکی از دستورات بالا را استفاده کنیم. من همیشه توصیه‌ام استفاده از nc بوده و خواهد بود.
حالا باید شروع به صحبت با پورت ۸۰ کنیم. من فعلا دو تا جمله براتون می‌گم و بقیه‌اش بمونه واسه بعد. دقت کنید که موقع کار با پورت ۸۰ با تلنت (نه nc) دستوراتی که ما می‌نویسیم، نمایش داده نمی‌شود ولی کار می‌کنه.
۱- اولین جمله اینه: GET / HTTP/1.0 و بعدش دوتا Enter
به فاصله‌ها دقت کنید. دو طرف / ی که بعد از GET است، فاصله وجود دارد. این جمله به پورت ۸۰ می‌گه که هرچی در header داره، نشون بده. و جواب می‌شنوم:
HTTP/1.0 302 Moved TemporarilyServer: Microsoft-IIS/5.0Date: Thu, 05 Dec 2002 12:02:51 GMTLocation: http://lc2.law5.hotmail.passport.com/cgi-bin/loginX-Cache: MISS from cache5.neda.net.irConnection: close

 

۲- دومین جمله اینه: GET / what/ever و بعدش دوتا Enter
به فاصله‌ها دقت کنید. این دستور باعث میشه که هر چی داره، رو کنه.

 

البته توجه کنید که ما مسیر را مشخص نکردیم. بعدها در مورد این مسیر مشخص کردن صحبت خواهم کرد. این حالت که بدون مسیر است خیلی وقت‌ها کار نمی‌کنه (مثل همین مثال !!)

 

 

فرمت این مقاله به صورت Word و با قابلیت ویرایش میباشد

تعداد صفحات این مقاله   50 صفحه

پس از پرداخت ، میتوانید مقاله را به صورت انلاین دانلود کنید


دانلود با لینک مستقیم


دانلودمقاله Smtp server

پروژه پایگاه داده SQL Server | کتابخــــــــانه 2

اختصاصی از فایلکو پروژه پایگاه داده SQL Server | کتابخــــــــانه 2 دانلود با لینک مستقیم و پر سرعت .

پروژه پایگاه داده SQL Server | کتابخــــــــانه 2


پروژه پایگاه داده SQL Server | کتابخــــــــانه 2 به همراه نمودارهای CDMوLDMوLDM با فایل های Power Designer

پروژه پایگاه داده کتابخــــــــانه 2 در SQL Server 2008 کد نویسی شده است ابتدا جدول های مورد نیاز هر پایگاه داده طبق استاندارد و نیاز سنجی طراحی شده و سپس کد نویسی شده است.دستورات این پایگاه داده بصورت فایل Text و SQL و طبق لیست زیر قابل دانلود میباشد.

1 - create database

2 - create table

3 - insert

4 - create view

5 - create procedure

6 - create trigger

7 - backup database

8 - attach

9 - SQL

 همچنین شامل Database کامل میباشد و نمودار ERD برای آن رسم شده است و نکته بسیار مثبت این پروژه فایل های Power Designer که بصورت هدیه برای شما قابل دانلود میباشد و شامل نمودارهایی به شرح زیر برای پایگاه داده کتابخانه است:

1. CDM- Conceptual Data Model (مدل مفهومی داده ها)
2. LDM- Logical Data Modelling(مدل منطقی داده ها)
3. PDM- Physical Data Model(مدل فیزیکی داده ها)

پروژه پایگاه داده کتابخــــــــانه برای درس پایگاه داده و آزمایشگاه پایگاه داده ها طراحی شده است و مناسب دانشجویان دوره کاردانی و کارشناسی رشته کامپیوتر و IT میباشد.

شناسنامه محصول


دانلود با لینک مستقیم


پروژه پایگاه داده SQL Server | کتابخــــــــانه 2

دانلود مقاله پایگاه داده sql server

اختصاصی از فایلکو دانلود مقاله پایگاه داده sql server دانلود با لینک مستقیم و پر سرعت .

 

 

 

مقدمه :
یکی از نکات مهم مدیریت یک پایگاه داده حصول اطمینان از امنیت اطلاعات است شما باید مطمئن باشید هر شخص که لازم است به طور قانونی به اطلاعات دسترسی داشته باشد می تواند به آنها را بدست آورد ولی هیچ کس نمی تواند بدون اجازه به آنها دسترسی داشته باشد .
نیاز به امنیت
قبل ازاینکه به بحث در مورد امنیت در SQL بپردازیم لازم است نیاز به امنیت را به درستی درک کنیم خطرات امنیتی از سه ناحیه مورد بحث قرار می گیرند .
1- فرامینی که از خارج به سیستم وارد می شوند : مزاحمین خارجی افرادی هستند که کوشش می کنند از خارج از شرکت به سیستم هایتان دستیابی پیدا کنند . که این کاردلایلی مثل اذیت کردن شوخی ، فروش اطلاعات به شرکت دیگر باشد از آنجا که بیشتر شرکت ها اقدامات اصولی وساده ای را برای پیشگیری از این نوع مزاحمت انجام می دهد این نوع مزاحمت به ندرت پیش می آید.
2- افراد شرکت تان این نوع مزاحمت متداولترین نوع آن است این افراد معمولا انگیزه نهائی برای دستیابی به داده هایی دارند که نمی بایست آنها را ببیند . که این انگیزه ممکن است کنجکاوی محض ویا سوء نیت باشد .
3- مزاحمت تصادفی : که نسبتا متداول است در اینجا کاربری دارد سیستم می شود وانتظار می رود که نتیجه خاص بدست آورد ولی آن نتیجه را بدست نمی آورد بلکه اطلاعات بسیار بیشتری نسبت به آنچه انتظار داشتند بدست می آورد .
اشخاصی که در شرکتتان کار می کنند ، احتمالا متداولترین نوع مزاحمت برای سیستم تا ن به شمار می آیند . این افراد معمولا انگیزه نهائی برای دستیبای به داده هایی دارند که نمی بایست آنها را ببینند . قدری از این انگیزه ممکن است کنجکاوی محض باشد ، و قدری از آن نیز ممکن است سوء نیت صرف باشد . برای متوقف کردن در این نوع مزاحمت ، واقعا باید با سوء ظن به تمام سیستم های خود بنگرید و آنها را تا حد ممکن قفل کنید . وقتی چنین کاری می کنید ، برخی از کاربران شکایت می کنند لازم است به تمامی این گونه مسائل پاسخ دهید وبه آنها توضیح دهید که چرا سیستم ها را قفل می کنید .
مزاحمت تصادفی نیز نسبتا متداول است چیزی که در این حالت رخ می دهد آن است که کاربری وارد سیستم می شود و انتظار دارد که نتیجه خاصی به دست آورد ، ولیکن آن نتیجه را به دست نمی آورد بلکه ، کاربران اطلاعات بسیار بیشتری نسبت به آنچه که انتظار داشتند به دست می آورند .

 

اصول امنیت SQL سرور
SQL سرور واژه ها و مفاهیم زیادی که باید با آنها آشنا شوید این مفاهیم شامل مراحلی می شوند که SQL سرور با انجام آنها به یک کاربر امکان می دهد تا تحت مدهای امنیتی مختلف ، که به زودی بررسی خواهند شد ،بایک بانک اطلاعاتی ارتباط برقرار کند ابتدا باید واژه های بیشتری را فرا بگیرید این واژه ها عبارتند از :
• ID برقراری ارتباط ID برقراری ارتباط بخشی از اطلاعات اعتبار کاربر است که کاربر برای دستیابی به SQL سرور ارائه می دهد بسته به مد امنیتی مورد استفاده در سرویس دهنده ، کاربر ممکن است مجبور به ارائه ID نباشد .
• کلمه عبور این امر ممکن است بارز باشد ، اما هر کلمه عبور صرفا رشته ای از کاراکترها است که برای اعلام اعتبار کاربری که با یک ID خاص با سرویس دهنده ارتباط برقرارمی کند ، به سرویس دهنده ارسال می شود . بیشتر شما باید با قوانین یک کلمه عبور مناسب آشنا باشید اما لازم است از این امر مطمئن شویم ، کلمات عبور خوب باید حرفی – عددی باشند وطول آنها نیز حداقل شش کاراکتر باشد .
• ID کاربر – این هم یک مرحله دیگر برای دستیابی به یک بانک اطلاعاتی خاص است . ID برقراری ارتباط و کلمات عبور که در بالا بررسی شدند ، شما را تنها به سرویس دهنده می رسانند . اگر تنها تا به آن حد پیش روید ، به هیچ یک از بانک های اطلاعاتی آ”ن سرویس دهنده دستیابی نخواهید داشت . هر کاربری که به یک بانک اطلاعاتی دستیابی داشته باشد یک ID کاربری در آن خواهد داشت . در بیشتر موارد ID برقراری ارتباطID و کاربری یک چیز هستند . پس از بررسی درستی ID برقراری ارتباط توسط SQL سرور وتعیین اینکه کاربر مجاز به دستیابی سرویس دهنده است .وی می بایست یک بانک اطلاعاتی را برای کار انتخاب کند SQL سرور سپس ID برقراری ارتباط با را تمام ID های کاربری آن بانک اطلاعاتی مقایسه می کند تا اطمینان حاصل شود که کاربر به بانک اطلاعاتی دستیابی دارد اگر هیچ ID کاربریی مطابق با ID برقراری ارتباط وجود نداشته باشد SQL سرور اجازه پیشروی بیشتر را به کاربر نمی دهد .
• انواع نقش های مختلفی که می توانید به کاربربدهید عبارتند از :
• نقشهای از پیش تعریف شده سرویس دهنده
• نقش های از پیش تعریف شده کاربر
• نقش عمومی
• نقش های شخص بانک اطلاعاتی
• نقش – هر نقش روشی برای گروه بندی کاربران دارای کارهای مشابه به منظور آسان شدن مدیریت است نقش ها در نگارش های قدیمی تر SQL سرور تحت عنوان گروه مطرح بودند نقش ها درعمل هنوز همان کار را انجام می دهند .
به جای تخصیص مجوز به هر یک از کاربران بانک اطلاعاتی ، به راحتی می‌توانید یک نقش ایجاد کنید و پس از قرار دادن کاربران در آن نقش مجوزها را به آن نقش تخصیص دهید انجام این کار سبب صرفه جویی در وقت مدیریت می شود تنها کاری که باید انجام دهید آن است که وی را دراین نقش قرار دهید چو ن بسیاری از مدیران قدیمی SQL سرور هنوز مشغول کار هستند ، بازهم خواهید دید که از واژه گروه به جای نقش استفاده می شود .
• نقش برنامه کاربردی – این نقش یک نقش ویژه است که امکان دستیابی به داده های موجود در بانک اطلاعاتی را تنها به برنامه های کاربردی خاص می دهد . بیشتر مدیران SQL سرور سالها این نوع ویژگی را درخواست کرده اند کار یکه این نقش انجام می دهد آن است که کاربران را مجاب می کند تا از طریق برنامه کاربردی به داده های بانک اطلاعاتی دستیابی پیدا کنند این ویژگی از اهمیت خاصی برخوردار است . چرا که بیشتر کاربران قادر به استفاده از برنامه های کاربردی خاصی چون میکروسافت اکسس خواهند بود که می تواند با بانک اطلاعاتی ارتباط برقرار کند و دستیابی مستقیم به جداول موجود در آن را برای کاربران فراهم کند . این کار کاربران را مجاب به استفاده از برنامه کاربردی می کند که خصوصا برای دستیابی به داده ها نوشته شده و از دستیابی برنامه های کاربردی دیگر جلوگیری می شود .
• گروههای ویندوز NT امنیت SQL سرور شدیدا بر امنیت ویندوز NT بنا شده است گروههای ویندوز NT مستقیما به نقش های SQL سرور قابل نگاشت هستند ، از این رو هر کاربری که جزئی از آن گروه باشد ، به طور خودکار به SQL دستیابی خواهد داشت .

 

فرایند بررسی اعتبار
وقتی کاربری اقدام به دستیابی به سرویس دهنده می کند چهار چیز کنترل می‌شود در هر مقطع کنترل می شود که کاربران مجاز به دستیابی هستند یا خیر . اگر چنین باشد امکان پیشروی به آنها داده می شود در غیر این صورت کاربر ،
پیام خطایی دریافت خواهد کرد وکار وی متوقف می شود .
نخستین سطح این امنیت ، در سطح شبکه است کاربران در بیشتر مواقع با یک شبکه ویندوز NT ارتباط برقرار خواهند کرد ،اما با هر شبکه دیگری که در کنار شبکه مذکور وجود داشته باشد نیز می توانند ارتباط برقرار کنند . کاربر باید یک IDبرقراری ارتباط ویک کلمه عبور معتبر شبکه وارد کند ، در غیراین صورت پیشرفت کار وی در همین سطح متوقف خواهد شد به نظر می رسد که چند روش برای گذشتن از این سطح امنیتی وجوددارد ، اماواقعا این طور نیست یک حالت در مواقعی است که یک کاربر بخواهد با استفاده از یک بانک اطلاعاتی واکشی کند اگر چه کاربر برای دستیابی به شبکه ممکن است نیاز به وارد کردن اطلاعات برقراری ارتباط نداشته باشد اما account که برنامه کاربردی در سرویس دهنده تحت آن درحال اجرا است حتما باید با شبکه ارتباط برقرار کند.
دومین سطح امنیت در خود سرویس دهنده است وقتی کاربر به این سطح می‌رسد ، می بایست یکID برقراری ارتباط و یک کلمه عبور معتبر برای پیشروی ارائه کنید بسته به مد امنیتی که در سرویس دهنده به کار می برید ، SQL سرور ممکن است بتواندIDبرقراری ارتباط با ویندوزNT را تعیین نماید .
سومین‌سطح امنیت یک سطح جالب است وقتی کاربر از سطح دوم عبور می‌کند
معمولا فرض براین است که مجوزهای لازم برای دستیابی به بانک اطلاعاتی در آن سرویس دهنده را دارد ، اما این امر حقیقت ندارد در عوض آ‎نچه که رخ می دهد آن است که کاربر باید یک کاربریID در بانک اطلاعاتی که می خواهد به آن دستیابی داشته باشد نیز داشته باشد هیچ کلمه عبوری در این سطح مطرح نیست در عوضID برقراری ارتباط توسط مدیر سیستم باID کاربری نگاشت می شود چنانچه کاربری ID در بانک اطلاعاتی نداشته باشد ، کار زیادی نمی تواند انجام دهد مگر در این حالت ممکن است یک IDکاربری مهمان در یک بانک اطلاعاتی وجود داشته باشد در این حالت آ‎نچه که رخ می دهد آن است که کاربر از طریق IDبرقراری ارتباط به سرویس دهنده دستیابی پیدا کرده است اما به بانک اطلاعاتی دستیابی ندارد و بانک اطلاعاتی حاوی یکID کاربری مهمان است مجوزها را می‌توان به کاربریID مهمان تخصیص داد درست به همان گونه ای که به کاربران دیگر قابل تخصیص هستند بانک های اطلاعاتی جدید طبق پیش فرض فاقد IDکاربری مهمان هستند .
آخرین سطح امنیت SQL سرور با مجوزهای سرو کار دارد آنچه که در این سطح رخ می دهد آن است که SQLسرور کنترل می کند کهID کاربریی که کاربر از طریق آن به سرویس دهنده دستیابی پیدا کرده است مجوزهای دستیابی به شی ء های مورد نظر را داشته باشد این امکان وجود دارد که دستیابی تنها برای برخی از شی ء های آن بانک اطلاعاتی باشد ونه تمام شی ء ها که معمولا نیز اینگونه است .
همان گونه که ملاحظه می کنید ، سطوح امنیت می توانند دستیابی به سرویس دهنده را برای کاربران غیر مسئوول بسیار دشوار کنند .
SQL سرور دو روش مختلف برای بررسی اعتبار کاربران و معرفی آنها به سرویس دهنده دارد بررسی اعتبار ویندوز NT که برای انجام تمام کارها به ویندوز NT متکی است روش دوم بررسی اعتباراتی SQLسرور که به ویندوز NT امکان می دهد تا علاوه بر کارهای بررسی اعتبار خاص خود ، بررسی اعتبار را اساسی اطلاعاتی که وارد می کند برای SQL سرور انجام می دهد .

 

سیستم شناسایی ویندوز
در این روش مدیر سیستم برای کاربران یا گروههای کاربری ویندوز حق دسترسی تعیین می کندکامپیوترهای مشتری که ازسرویس های کامپیوتر مرکزی استفاده می کنند به این کامپیوتر متصل شده اند کاربر توسط سیستم عامل Windows یا NT که بر روی کامپیوتر مرکزی نصب شده است شناسایی می شود واگر اجازه دسترسی داشته باشد به آن متصل می گردد در این حالتServer SQL تنها کافی است بررسی کند که آیا کاربر متصل شده حق دسترسی به سرویس دهنده وپایگاه داده را دارد یا خیر ؟

 

سیستم شناساییServer SQL
در این روش هنگامی که یک درخواست برای اتصال فرستاده می شود Server SQL یکLogin ID او یک کلمه عبور دریافت می کند وسپس Login مزبور را با لیست Login های تعریف شده توسط مدیر سیستم مقایسه می کند .

 

برقراری ارتباط با سرویس دهنده و کاربران بانک اطلاعاتی
همچون تمام کارهای دیگری که در SQL سرور انجام می دهید روشهای مختلف زیادی برای ایجادID های برقراری ارتباط وID های کاربری وجود دارد نخستین روش برای انجام این کار از طریق یک ویزارد درEnterprise Manager SQL است .
این ویزارد شما راگام به گام در ایجاد یکID برقراری ارتباط ویک IDکاربری یاری می کند دلیل یکی کردن آنها آن است که درواقع در ارتباط بایکدیگر ایجاد می شوند روش دوم برای ایجاد ID ها استفاده از رویه های ذخیره شده است اگر از این روش استفاده کنید ،درصورت نیاز می توانید همان ID ها را در تمام سرویس دهند ها ایجاد کنید آخرین روش ،ایجاد مجزای آنها درEnterprise Manager SQL است .

 

ساختن Login
برای ساختن یک Login با مدل شناسایی SQL Server
1- سرویس دهنده مورد نظر خود را درکنسول درختی انتخاب کنید سیستمی از اشیاء آن سرویس دهنده در منطقه جزییات ظاهر می شود . ( شکل 1)
2- دکمه Wizard موجود بر روی نوار ابزار Enterprise Manager را کلیک کنید .Server SQL کاردرمحاوره ای Slect Wizard را نشان می دهد (شکل 2)
3- آیتم Creat Login Wizard موجود در قسمت Data bases را انتخاب نمود سپس دکمه ok را کلیک کنید اولین صفحه این ویزارد توسطServer SQL به نمایش در می آید ( شکل 3)
4- دکمه Next را کلیک کنید ویزارد صفحه ای رانشان می دهد که مدل شناسایی را از شما درخواست می کند (شکل 4)
5- ایتم دوم را انتخاب نمایید . ( شکل 5)
6- دکمه Next را کلیک کنید در صفحه بعدی شناسه کاربر و کلمه عبور را از شما درخواست می شود ( شکل 6)
7- کلمه Test ID رابه عنوان نام وارد کرده و دکمه عبور دلخواه خود را نیز تایپ کنید ( شکل 7)
8- دکمهNext را کلیک کنید ویزارد از شما سوال می کند که این Login را به کدامیک از رل های امنیتی نسبت دهد . (شکل 8 )
9- این Login را به رل System Adminstrator نسبت دهید (شکل 9 )
10- دکمه Next را کلیک کنید درصفحه بعدی باید پایگاه هایی را که این Login به آنها دسترسی دارد مشخص نمایید ( شکل 10 )
11- این Login را به پایگاه داده Aromatherapy نسبت دهید ( شکل 11 )
12- دکمه Next را کلیک کنید در صفحه نهایی ویزارد انتخاب های شما نشان داده می شوند (شکل 12 )
توجه : Login هایی که به رل های مخصوص سرویس دهنده مثل رل System Adminstators نسبت داده می شوند به تمام پایگاه داده دسترسی خواهند داشت حتی اگر درمرحله 11 آنها را انتخاب نکنید . (شکل 12)
13 دکمه Finish راکلیک کنید این ویزارد پیغامی مبنی بر اتمام کار و ساخته شدن Login جدید نمایش می دهد ( شکل 13 )

 

مدیریت Login ها
همانطور که بقیه اشیاء پایگاه داده به مدیریت و نگهداری نیاز دارند شناسه های کاربران نیز ممکن است در طول زمان تغییر کنند مثلا ممکن است لازم باشد که رل امنیتی نسبت داده شده به یک Login ویا پایگاه داده قابل دسترس آن راتغییر دهیدویا در بعضی شرایط ممکن است بخواهید یک Login رابه طور کامل حذف کنید تمام این کار ها با استفاده از Enterprise Manager بسیار ساده هستند .

 

امنیت در سطح پایگاه داده
در سطح پایگاه داده هر یک از Login ها به یک کاربر پایگاه داده مربوط می شوند اگر چه Login به یک شخص امکان میدهد که به یک نمونه ازServer SQL دسترس مجاز داشته باشند ولی باید بدانیم که به یک پایگاه داده خاص دسترسی نخواهد داشت مگر آنکه به عنوان یک کاربر آن پایگاه داده تعریف شود .
همانطور که Login ها به رل های سرویس دهنده نسبت داده می شوند به این
ترتیب حق دسترسی آنها در سطح سرویس دهنده مشخص می گردد کاربران یک پایگاه داده نیز رل های آن پایگاه نسبت داده می شوند واز این طریق سطح دسترسی به پایگاه داده تعیین می گردد .

 

کاربران پایگاه داده
هنگامی که با استفاده از ویزارد Login Creatیک Login می سازید ودسترسی به یک یا چند پایگاه داده را برای وی میسر می سازید این Login به طور اتوماتیک به لیست کاربران آن پایگاه ها اضافه می شود ولی وقتی یک پایگاه داده جدیدی می سازید Login های موجود به عنوان کاربران آن منظور نمی شوند بلکه خود شما باید Login های مورد نظر تان را به لیست کاربران آن پایگاه داده اضافه کنید .
خلاصه : در این مقاله اطلاعات مربوط به مدهای امنیتی SQL سرور و امنیت SQL سرور را بررسی نمودیم نکته ای که می بایست به هنگام تعیین امنیت در نظر داشته باشید آن است که باید شکاک باشید پس از آن با ID های برقراری ارتباط ID های کاربری ونقش ها آشنا شوید دانستن آنها برای چگونگی مدیریت مهم است چرا که چگونگی کنترل دستیابی به سرویس دهنده را تعیین می کند .

معرفی و مقدمه
1- برنامه های کاربردی Web SQL njection,
1.1 مرور کلی SQL njection شیوه ای است که برنامه های کاربردی Web به کار می رو د و مشتریان می توانند اطلاعات را از طریق query های SQL مرون اینکه ابتدا کاراکترهای مضرر را به صورت بالقوه ای stripping potentially جدا کنند فراهم می کند موضوع این مقاله در مورد آموزش تکنیکهای استفاده از برنامه های کاربردی Web که درمقابل SQLinjection آسیب پذیر هستند و مکانیسم محافظت در مقابل SQLinjection وبه طور کلی مشکلات معتبر سازی ورودی باشد .

 

1.2 سابقه
قبل از خواندن این مقاله باید درک اولیه از چگونگی کار پایگاههای داده ای و استفاده ازSQL برای دستیابی به آنها داشته باشیم .

 

1.3 به رمز در آوردن کاراکترها
در بیشترbrowser Web ها کاراکترهای نشانه گذاری وبسیاری سمبل های
دیگر باید قبل از اینکه دریک درخواست استفاده شوند به صورت URL به رمز در آورده شوند در این مقاله از کاراکترهای عادی ASCII در مثالها و عکسها استفاده شده است .

 

2- آزمون آسیب پذیری
2.1 آزمون جامع
چک کردن برنامه های کاربردی Web برای آسیب پذیری نسبت به SQLInjection به نظر ساده می رسد آنچه که ما می بینیم فرستادن یک quote اولین ارگومان script و برگرداندن یک صفحه سفید با یک خط که اشتباه ODBC را نشان می دهد به وسیله سرور می باشد ولی بررسی جزئیات آسیب پذیر بسیار مشکل است .
همه پارامترهای موجود در هرSCRIPT باید همیشه چک شوند برنامه نویسی کهScript A را طراحی می کند هیچ کاری با گسترش Script B ندارد و ممکن است در جایی SQL injection A که نسبت به مصون است B آسیب پذیر باشد حتی وقتی برنامه نویسی روی تابع A از Script کار می کند هیچ کاری به تابع Bدر همان Script ندارد ومثلا ممکن است تابع A به آسیب پذیر باشد ولی B نباشد وقتی کل یک برنامه کاربردی Web به وسیله یک نفر برنامه نویس طراحی کد گذاری و تست می شود ممکن است فقط و فقط یک پارامتر در یک Script در بین هزارانScript پارامتر در هزاران آسیب پذیر باشد که می تواند به خاطر این باشد که توسعه دهنده به هر دلیلی در مورد آن داده در آن محل مطابق اصول رفتار نکرده است پس هیچ گاه نمی توان مطمئن بود و باید چک کرد .

 

2.2 فرایند آ‎زمون
آرگومان هر پارامتر را به وسیله یک Quoteتنها و کلمات کلیدی SQL مثل WHERE جایگزین کنید هر پارامتر باید به صورت منفرد تست شود البته در هنگام تست هر پارامتر بقیه پارامترها باید بدون تغییر باشد ممکن است تصور شود که بهتر است برای ساده تر شدن داده های اصامی را پاک کرد و به خصوص باکار بردهایی که صفی از پارامترها دارند و مربوط به هزاران کاراکتر است ولی این کار باعث کارابنون کاربرد در زمینه های دیگر می شود که باعث می شود که نتوانیم مطمئن شویم که SQLinjecttion در آ‎ن محل ممکن است یا خیر برای مثال فرض می کنیم خط پارامتر زیرکاملا قابل دسترس و
تغییر ناپذیر است .
Contact Name= Maria% 20 Qanders & company Name = Alfreds % 20 futter kiste
وخط پارامتری زیر به شما اشتباه ODBC را می دهد .
Contact Name= Maria% 20 Qanders & company Name= 20 OR
که با چک کردن این خط :
Company Name =
به شما اشتپاهی را می دهد که می گویند باید مقدار Contact Name مشخص شود این خط :
Contact Name= Bad Contact Name& company Name=

 

فرمت این مقاله به صورت Word و با قابلیت ویرایش میباشد

تعداد صفحات این مقاله 51   صفحه

پس از پرداخت ، میتوانید مقاله را به صورت انلاین دانلود کنید

 

 


دانلود با لینک مستقیم


دانلود مقاله پایگاه داده sql server