ישנם כמה גורמים עקריים
1- מניעת injection ל sql
2- מניעת שתילת קוד xss - javascript
3- אבטחה של בסיס נתונים
4. מנע נפילות שיגיעו למשתמש קצה
1. מניעת sql injection
למקרה זה יש פתרון פשוט , כל השאילתות לעבוד רק עם פרמטרים ,לא לשרשר משתנים למחרוזת sql
2. מניעת שתילת קוד javascript או תגיות html זדוניות
למקרה זה ישנם כמה דברים שצריך לבצע:
-בדיקת אורכי וסוג שדה - בדיקה ברמת סרבר , השתמש ב regular expression
-בדיקת משתני request ,cookies
-אם חייב לאפשר הכנסת קוד html לשדות - תבצע קידוד htmlencode
-קידוד קוד פלט - שלא יוכלו לשתול קוד גאווה סקריפט
-אל תציג כפלט את מה שאתה מכניס קקלט, או משתני session, application ללא קידוד
-תשתמש ב meta encode
-אם אתה קולט שמות קבצים בשדות ,תשתמש בשם המלא כולל הנתיב
- אם אתה קולט url בשדות - תקודד encodeurl
- הזהר מתאגים אלו ניתן להשתמש בהם לשתילת קןד זדוני
<applet>
<body>
<embed>
<frame>
<script>
<frameset>
<html>
<iframe>
<img>
<style>
<layer>
<link>
<ilayer>
<meta>
<object>
דוגמא לשתילת קוד
<img src="javascript:alert('hello');">
<img src="java
script:alert('hello');">
<img src="java
script:alert('hello');">
דוגמא נוספת לשתילת קוד
<style TYPE="text/javascript">
alert('hello');
</style>
3. אבטחה של בסיס נתונים
השתמש ב storeprocedure והגבל הרשאות לפי משתמש
הקם כמה משתמשים ולכל משתמש תן הרשאות רק ל storeprocedure שצריך
4.מנע נפילות - לא יחזרו למחשב לקוח
השתמש ב try catch
תפוס כל שגיאה שלח לדף שגיאה משלך - ללא פרטים מה השגיאה
עוד כמה דברים שכדאי לבצע
-להשתמש בסיסמאות לפחות 7 תוים אותיות ומספרים
-לקודד מחרוזת חיבור ל sql
-השתמש ב captcha בטפסים
למידע נוסף כנסו לאתר ask2know
מקור המאמר: www.Articles.co.il - מאמרים לשימוש חופשי
|
כלים שימושיים למאמר: |



