חסמו קבצים חשופים .git, .env וגיבויים
קובץ .env או backup.sql שנשכח בתיקיית האתר יכול למסור את כל הסיסמאות ומפתחות ה-API שלכם. הבדיקה לוקחת דקה, והחסימה כמה שורות.
הקוד וההגדרות נשארים באנגלית.
בדקו את האתר שלכם
כל אחד מאלה צריך להחזיר 403 או 404, אף פעם לא 200:
curl -s -o /dev/null -w '%{http_code}\n' https://example.com/.env
curl -s -o /dev/null -w '%{http_code}\n' https://example.com/.git/HEAD
curl -s -o /dev/null -w '%{http_code}\n' https://example.com/backup.sqlבדקו רק אתרים שבבעלותכם. הסריקה המעמיקה של HackGrade בודקת הרבה יותר נתיבים, אחרי שתוכיחו בעלות.
חסימה ב-nginx
# hidden files and folders (.git, .env, .htpasswd), but keep /.well-known working
location ~ /\.(?!well-known/) { deny all; }
# backups and dumps
location ~* \.(sql|bak|old|orig|swp|log)$ { deny all; }חסימה ב-Apache
RedirectMatch 404 "/\.(git|svn|hg)(/|$)"
<FilesMatch "(^\.env|\.(sql|bak|old|orig|swp|log)$|~$)">
Require all denied
</FilesMatch>
Options -Indexesאם משהו נחשף
- מחקו את הקובץ מתיקיית האתר. שמרו גיבויים מחוץ לה.
- הניחו שהתוכן הועתק: החליפו את סיסמאות מסד הנתונים והחליפו כל מפתח API וטוקן שהיו בו.
- אם נחשפה תיקיית
.git, בדקו גם את היסטוריית הקומיטים וחפשו סודות שנכנסו אליה אי פעם.