Hotlinking היא תופעה אשר מאוד נפוצה בקשר אתרים גדולים ומלאי תוכן, תופעה זאתי גורמת לניצול התעבורה של השרת המארח על מנת להגיש את התמונות או את הקבצים באתר אשר לא יושב על הדומיין המקורי.

מה זה Hotlinking?

Hotlinking היא תופעה אשר יכולה לעלות לבעל אתר הרבה מאוד כסף כאשר ״רוכבים״ על השרת שלו ומגישים תמונות וקבצים באתרים אחרים. מצב כזה היא גניבה כפולה מכיוון שלא רק מתבצעת הפרה של זכויות יוצרים אלא גם שמתבצעת גניבה של משאבי שרת כגון תעבורה.

איך מזהים Hotlinking?

ניתן לזהות תופעה כזאתי בדוחות התעבורה בפאנל הניהול של השרת אם רואים שפתאום יש עליה חדה בשימוש בעבורה. לרוב Hotlinking מתקשר לתמונות, אך ישנם גם מקרים כאשר מתבצעים Hotlinking לקבצים כגון וידאו, קבצי ארכיון (zip) או כל קובץ אחר.

DirectAdmin

על מנת לבדוק יש לצפות בדו״ח אתר לפי דומיין ע״י התחברות לפאנל הניהול ובחירה של הדומיין (במידה ויש יותר מאחד), לאחר מכן יש ללחוץ על Site Summary / Statistics / Logs ואז לבחור ב-Full Usage Log, כעת יש לחפש בלוג האם אתם מוצאים בקשות חריגות.

cPanel

על מנת לבדוק יש להוריד את הדו״ח ע״י התחברות לפאנל הניהול, בחירה ב-Raw Access Logs תחת Logs, בעמוד שנפתח יש ללחוץ על הדומיין הרצוי. לאחר שהקובץ יסיים להוריד יש לחלץ את התוכן של קובץ הארכיון ולפתוח עם עורך טקסט את הקובץ.

ניתוח הקובץ

הקובץ יהיה מורכב ממספר רב של שורות, כאשר כל שורה מתארת בקשת HTTP לקובץ או דף מסויים באתר היושב על השרת. נבחר שורה אחת לדוגמא וננתח אותה.

79.182.179.35 - - [04/Oct/2015:10:03:17 +0300] "GET /wp-content/uploads/2015/09/dor-zuberi.jpg HTTP/1.1" 200 11226 "https://www.dorzki.co.il/2015/%D7%9B%D7%9C%D7%99-%D7%A4%D7%99%D7%AA%D7%95%D7%97-%D7%9C%D7%91%D7%95%D7%A0%D7%99-%D7%90%D7%AA%D7%A8%D7%99%D7%9D-%D7%91-chrome/" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36"

אם נפרק את השורה הנ״ל נראה שהיא מורכבת ממספר חלקים אשר מאפשרים לנו לזהות את הבקשה והאם היא חשודה:

  • כתובת IP // בתור התחלה אנחנו יכולים לראות את כתובת ה-IP של המבקש 79.182.179.35, ובעזרת כלי חינמי לבדיקת מיקום אנחנו מזהים את המיקום הגיאוגרפי של המבקש.
  • זמן ותאריך // לאחר מכן אנחנו יכולים לראות את תאריך והזמן של הבקשה – [04/Oct/2015:10:03:17 +0300].
  • סוג הבקשה // הפרמטר הבא הוא סוג הבקשה ומה בוקש, ניתן לראות שזאת בקשת GET ומבקשים תמונה והמיקום של התמונה ביחד לדומיין – "GET /wp-content/uploads/2015/09/dor-zuberi.jpg HTTP/1.1".
  • קוד תשובה // לאחר מכן ניתן לראות כי הבקשה נענתה בחיוב – קוד תגובה 200 (להסבר על קודי תגובה שונים).
  • גודל התשובה // גודל התשובה המוחזרת מהשרת – 11226.
  • קישור המפנה // הפרמטר הבא הוא הכי חשוב מכיוון שהוא מציג לנו מה כתובת העמוד אשר ביקש את התמונה, ככה ניתן לדעת האם מישהו עושה לנו Hotlinking ואיך לזהות מאיפה – "https://www.dorzki.co.il/2015/%D7%9B%D7%9C%D7%99-%D7%A4%D7%99%D7%AA%D7%95%D7%97-%D7%9C%D7%91%D7%95%D7%A0%D7%99-%D7%90%D7%AA%D7%A8%D7%99%D7%9D-%D7%91-chrome/"
  • User Agent // הפרמטר הבא הוא -User Agent של המשתמש, כך לדוגמא ניתן לראות מאיזה דפדפן הגולש הגיע – "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36"

אז איך מגינים מפני Hotlinking?

הגנה מפני Hotlinking היא מאוד פשוטה ומאוד כיפית. כיפית???, כן כן כי אין כמו להכניס בחזרה לגנב אשר ניסה לרכוב על ההצלחה שלכם, תחשבו על זה כמו על פצצות הצבע שיש בין שטרות של כסף בבנק.

כל שעלינו לעשות הוא ליצור קובץ .htaccess אם לא קיים, ולהדביק את הקוד הבא:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?dorzki.co.il [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://i.imgur.com/ezXFHpI.jpg [NC,R,L]
  • שורה 1 // אנחנו מורים לשרת להשתמש ב-mod_rewrite.
  • שורה 2 // אם משתמש גולש עם Firewall (כמו בארגונים), יכול להיות שלא תסופק כתובת הפנייה, לכן אנחנו לא רוצים לחסום אותם על מנת שלא יקרה מצב שהם יכנסו לאתר ולא יראו תמונות.
  • שורה 3 // אנחנו מגדירים שרק הדומיין dorzki.co.il (על כל סוגיו, עם/בלי https ו/או עם/בלי www) ראשי להציג את התמונות – לא לשכוח לשנות לדומיין שלכם…
  • שורה 4 // אם הבקשה היא עבור קובץ תמונה עם סיומת jpg, jpeg, png או gif, תציג לו את התמונה ב-url שמוגדר.

מה שאנחנו עושים פשוט זה אומרים לשרת לבדוק מי מבקש את התמונה, במידה ודומיין המבקש הוא לא ברשימה, תציג לו את התמונה הבאה:

תמונה לדוגמא כאשר עושים Hotlinking

מומלץ להחליף את זה בתמונה קצת יותר רצינית ולשים שם קישור לאתר שלכם, ככה הגולשים ידעו מאיפה נגנבה התמונה.

סיכום

Hotlinking היא תופעה מגעילה ודי נפוצה, מומלץ להגן על האתר והשרת שלכם כמה שיותר, אם אתם מבצעי Hotlinking אז נו נו נו!

בהצלחה!

דור צוברי

מתכנת מגיל 13, ומתעסק עם וורדפרס מגיל 18, אוהב לפצח אתגרים ולפתח דברים מורכבים על בסיס וורדפרס. עצמאי מגיל 16, מרצה ובלוגר. בזמן הפנוי שלי אוהב מאוד לקרוא קומיקס של MARVEL.

דור צוברי

תגובות לפוסט

כתיבת תגובה

תגובה אחת

  1. אוזן מאיר

    היי
    האם אתה יכול לבדוק לי אתר ולסדר אותו שיהיה תקין ?
    ומה העלות ?
    אשמח למענה .
    תודה

    1. מחבר
      דור צוברי

      היי מאיר,
      מוזמן לפנות אליי דרך טופס צור קשר לקבלת הצעת מחיר.