From Shabgard.ORG

Hacking
پورت ۸۰ چيست؟
By www.tur2.com
Jan 18, 2005, 05:41

- پورت ۸۰ چيست؟

پورت ۸۰ يکی از مهم‌ترين پورت‌هاست. دنيای وب (صفحات اينترنتی) بر اساس همين پورت کار می‌کنه. توضيح اينکه وقتی به يه سايت وصل می‌شيم و صفحه وب را درخواست می‌کنيم، در واقع مرورگر اينترنتی به پورت ۸۰ اون کامپيوتر وصل می‌شه و اطلاعات رو می‌گيره (البته بعد از گرفتن اطلاعات اون رو تفسير می‌کنه و به صورت يه صفحه نشون می‌ده - دقت کنيد که اطلاعات در واقع به صورت يک سری تگ HTML است ).


- با پورت ۸۰ صحبت کنيم

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

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

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


گاهی پيش می‌آد که يک سری دستورات خاص را هميشه بايد پشت‌ سرهم به يه پورت خاص بفرستيم و بخواهيم در وقت صرفه‌جويی کنيم. مثلا همين جمله GET / HTTP/1.0 و دو Enter پشت سرهم که هميشه استفاده می‌کنيم. در اين موارد می‌توان اين دستورات را در يک فايل تايپ کرد (همراه با Enter ها که بايد موقع نوشتن حتما بزنيد) و بعد مثلا با نام ali.txt ذخيره کنيد و بعد يکی از دستورات زير را بنويسيم:
nc -v www.far30.com 80 < ali.txt
type ali.txt | nc -v www.far30.com 80
که همان کارهای بالايی را انجام ميده.


- حالا مي‌خوام مسير رو مشخص کنم

مثلا فرض کنيد که مي‌خوام فايلي به اسم index.html را از مسير startup در سايتي به اسم www.site.com داون‌لود کنيم. اول يه nc مي‌کنيم به سايت. بعد مي‌نويسيم:
GET /startup/index.html HTTP/1.0
بعد دو تا Enter مي‌زنيم.
اين مثال نشون ميده که چطوري مسير رو ميشه مشخص کرد. همين کار رو مي‌تونيم براي فايل‌هايي مثل فايل‌هاي گرافيکي و ... انجام بديم و حتي مي‌تونيد اطلاعاتي که مي‌رسه رو در يک فايل ذخيره کنيد. براي اين‌کار مي‌نويسيد:
nc -v www.site.com 80 > index.html
(اين کاري که کرديم با موردي که در بالا نوشتيم فرق مي‌کنه! در بالا دستورات GET رو تو يه فايل مي‌نوشتيم و مي‌فرستاديم که اجرا بشه ولي الان داريم نتايجي که بر مي‌گرده رو در يک فايل ذخيره مي‌کنيم!) ميشه اين دوتا رو ترکيب کرد مثلا نوشت:
nc -v www.site.com 80 < dastoorat.txt > index.html


Copyright by Shabgard.ORG