הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

חזור   הוסטס - פורום אחסון האתרים הגדול בישראל > עיצוב גראפי, תכנות על כל שפותיו וקידום ושיווק אתרים > פורום תיכנות

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 16-06-06, 08:10   # 1
BlueNosE
אין כמו ב127.0.0.1
 
BlueNosE's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: כפ"ס
גיל: 31
הודעות: 4,086

BlueNosE לא מחובר  

[PHP] ביטול פריצות אבטחה ע"י GET

שלום,
אני עובד על המערכת שלי,
skywar,
ואני צריך את עזרתכם =\

קיצור, יש לי משתנה, בשם gamelist.
עכשיו, אם ניגשים אליו ככה:
http://skyawr.webitem.co.il/index.php?gamelist=null
המשתנה נמחק.
זאת לא בעיה. במשתנה לא נכנס מידע כ"כ קריטי שאני לא יכול לשרוד שלא יראו אותו.
אבלל..
אני מוטרד מזה שמישהו יגש למשתנה יותר קריטי במערכת, ואולי יצליח לפרוץ אותה...
יש משהו להתחמק נגד זה?


תודה רבה למגיבים.

ושוב אני אומר, בעיות במחשב גורמות לי לא לבקר פה הרבה זמן. אז אני אחזור עוד מעט.
__________________
עומר,
admin [@] rely.co.il

בניית אתרים Rely

סלנג מילון סלנג utter
  Reply With Quote
ישן 16-06-06, 09:02   # 2
בניה
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: נחושה
הודעות: 3,434

בניה לא מחובר  

ב"ה


המשתנה נקרא
ככה:
קוד:
$gamelist
או ככה:
קוד:
$_GET['gamelist']
אם כמו באפשרות הראשונה זה לא בטוח מסוכן כי אם מוגדר בשרת
קוד:
register_globals = Off
אז זה לא מסוכן כי אי אפשר לגשת למשתנה מבחוץ(וככה זה בכל שרת נורמאלי)
ואפשר לבדוק את זה ככה:
קוד:
ini_get('register_globals')
ואם כמו באפשרות השנייה אז זה מידע שאתה מימילא אמור לקבל מהמשתמש אז פשוט תבדוק שאין בזה ערכים מסוכנים.
  Reply With Quote
ישן 16-06-06, 13:59   # 3
BlueNosE
אין כמו ב127.0.0.1
 
BlueNosE's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: כפ"ס
גיל: 31
הודעות: 4,086

BlueNosE לא מחובר  

ואני, כמו 90% מהאחרים בעולם, לא על שרת פרטי.
כמו כן, אני לא בעל גישה לקובץ INI לצערי. אחרת העולם היה הרבה יותר שמח.
xD
SOMETHING ELSE?
__________________
עומר,
admin [@] rely.co.il

בניית אתרים Rely

סלנג מילון סלנג utter
  Reply With Quote
ישן 16-06-06, 14:09   # 4
RS324
תודה על תרומתך.
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 3,173

RS324 לא מחובר  

אוקי אז זאת פונקציה שכתבתי עכשיו - לא בדקתי אותה אבל רעיונית היא אמור לעבוד

אני מאמין שיש לך קובץ שנקרא gloabl.php שאתה קורא לו מכל הדפים

אז תדחוף את הפונקציה שם :
PHP קוד:
<?php

function deregister_globals()
{
    
$allowedvars =array(
    
'_GET' => $_GET,
    
'_POST' => $_POST,
    
'_REQUEST' => $_REQUEST,
    
'_COOKIE' => $_COOKIE,
    
'_FILES' => $_FILES,
    
'_SESSION' => $_SESSION
    
);

    foreach (
$GLOBALS AS $key =>$val)
    {
        if (!
in_array($key,$GLOBALS))
        {
            unset(
$GLOBALS['key']);
        }
    }
}


deregister_globals();

?>
עכשיו להסבר :

$allowedvars - זה הערכים שמורשים להשאר לדוגמא GET POST וכאלה אני שמתי שם רק כמה דוגמאות בשביל להמחיש את הרעיון.
כמובן שצריך לבדוק את הקוד ואולי לפתח אותו עוד קצת אבל עקרונית זה אמור לעבוד

תהנה.
  Reply With Quote
ישן 16-06-06, 18:23   # 5
BlueNosE
אין כמו ב127.0.0.1
 
BlueNosE's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: כפ"ס
גיל: 31
הודעות: 4,086

BlueNosE לא מחובר  

לא הבנתי איפה אתה משתמש פה בallowedvars... אין בו בכלל שימוש..

אני אנסה אחר כך.. תודה על הניסיון..
אה ד"א ומה קורה אם אני צריך GET?
O.o
__________________
עומר,
admin [@] rely.co.il

בניית אתרים Rely

סלנג מילון סלנג utter
  Reply With Quote
ישן 16-06-06, 20:53   # 6
MasterNir
חבר פורום
 
מיני פרופיל
תאריך הצטרפות: Apr 2006
גיל: 35
הודעות: 122
שלח הודעה באמצעות ICO אל MasterNir שלח הודעה באמצעות MSN אל MasterNir

MasterNir לא מחובר  

אתה יכול לקבוע את ה-register_globals גם דרך ה-htaccess...

בשביל עוד מידע: www.justfuckinggoogleit.com
__________________
ניר, מתכנת PHP מקצועי עם ידע ויכולות מוכחות.

צור קשר:
MSN Messanger: MasterNir@gmail.com
E-mail: MasterNir@gmail.com
ICQ #: 171963672
  Reply With Quote
ישן 18-06-06, 14:09   # 7
BlueNosE
אין כמו ב127.0.0.1
 
BlueNosE's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: כפ"ס
גיל: 31
הודעות: 4,086

BlueNosE לא מחובר  

ציטוט:
נכתב במקור על ידי MasterNir
אתה יכול לקבוע את ה-register_globals גם דרך ה-htaccess...

בשביל עוד מידע: www.justfuckinggoogleit.com
ולמה אתה חושב שאתה מצחיק? =/
__________________
עומר,
admin [@] rely.co.il

בניית אתרים Rely

סלנג מילון סלנג utter
  Reply With Quote
ישן 18-06-06, 14:11   # 8
miniature
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 1,754

miniature לא מחובר  

לא הבנתי למה כשהתוכן של המשתנה הוא NULL הוא יימחק..?
__________________
יואב.

דרכים ליצירת קשר:

אימייל: thebigfire@walla.co.il
הודעה פרטית
  Reply With Quote
ישן 18-06-06, 17:45   # 9
BlueNosE
אין כמו ב127.0.0.1
 
BlueNosE's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: כפ"ס
גיל: 31
הודעות: 4,086

BlueNosE לא מחובר  

תחשוב שאתה יכול לגשת למשתנה $id ב2 צורות
1. $_GET['id']
2. $id
אבל זה מותנה במצב הregister_globals.
המצב האידאלי מבחינת אבטחה הוא off.
אבל אצלי הוא on, וזה יוצר בעיה רצינית באבטחה..


מקורה ככה? P:
__________________
עומר,
admin [@] rely.co.il

בניית אתרים Rely

סלנג מילון סלנג utter
  Reply With Quote
ישן 18-06-06, 17:51   # 10
RS324
תודה על תרומתך.
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 3,173

RS324 לא מחובר  

מצטער פשוט כתבתי את זה דיי מהר ולא בדיוק בדקתי את זה

בבקשה הפונקציה המתוקנת....

PHP קוד:
<?php

function deregister_globals()
{
    
$allowedvars =array('_GET','_POST','_REQUEST','_COOKIE','_FILES' ,'_SESSION');

    foreach (
$GLOBALS AS $key =>$val)
    {
        if (!
in_array($key,$allowedvars))
        {
            unset(
$GLOBALS[$key]);
        }
    }
}


deregister_globals();

?>
  Reply With Quote
השב

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 


חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 11:12.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ