משיב מוביל
בדיקות אבטחה לsql server

שאלה
-
תשובות
-
הי,
נראה לי שכיסית את רוב הדברים. הייתי מוסיף לרשימה:
1. SQL Server Logins עם הגדרות אבטחה לא מלאות (Enforce Password Policy ו-Enforce Password Expiration)
2. Logins שלא התחברו למערכת מעל X ימים ואולי אפשר למחוק
3. Credentials ו-Proxies שמוגדרים ב-Instance
4. End Points שמוגדרים ב-Instance
5. הרשאות לא סטנדרטיות ל-Public Role גם ברמת ה-Instance וגם ברמת ה-Database
6. Expiration Date של Certificates
7. שימוש ב-TDE
8. הגדרות של ה-Services של SQL Server (פורטים, Hide Instance, הצפנה, Logon Accounts, וכו')
9. הרשאות Impersonate ו/או שימוש ב-EXECUTE AS בקוד
10. שימוש ב-Instant File Initialization
אם אתה כבר כותב סקריפטים לכל הדברים האלה, נשמח אם תפרסם אותם כאן ותשתף את כולם.
בהצלחה!
-----------------------------
גיא גלנצר
יועץ ומדריך SQL Server
Madeira - SQL Server Services
http://www.madeirasql.com
- הוצע כתשובה על-ידי pituachMVP, Moderator יום שלישי 26 אוגוסט 2014 16:26
- סומן כתשובה על-ידי pituachMVP, Moderator יום רביעי 27 אוגוסט 2014 21:43
כל התגובות
-
אני לחא מצליח אתצ השאלה שלך. אולי תנסה להבהיר מה ז"א השאילתות שאתה יכול להריץ?
אתה יכול להריץ כל שאילתה שיש לך הרשאות
אם יש בעיה אז אתה יכול להגביל הרשאות של משתמשים
הרשאות ניתן לקבוע ברמת השרת, ברמת מסד הנתונים, ברמת טבלאות או אלמנט אחר (למשל VIEW), ואפילו ברמת נתונים בודדים בעקרון.. יש לך שליטה מלאה
[Personal Site] [Blog] [Facebook]
- סומן כתשובה על-ידי Eran Sharvit יום חמישי 21 אוגוסט 2014 19:57
- סימון כתשובה בוטל על-ידי pituachMVP, Moderator יום שלישי 26 אוגוסט 2014 16:26
-
כנראה ניסחתי את עצמי לא נכון
אני רוצה רשימה של כמה בדיקות שאני יכול לחקור את המערכת שלי יותר טוב
לדוגמא זה מה שאני בודק עכשיו :
Allow Guest Users Authentication Mode Auto Close option Blank/simple passwords Built in Administrators Connections with SA Cross DB Chaining Failed Login Attempts Failed login logging option Guest login Linked server security Locked out logins Logins with SysAdmin Sample databases installed SQL Server security configuration options
מה עוד אפשר להוסיף לרשימה?? -
מצטער אני עדיין לא מבין...
זה ניראה כמו רשימה של הרשאות ולא בדיקות.
אתה יכול לקבל רשימה של ההשרשאות של משתמש אם אתה רוצה. אתה לא אמור לבדוק בפועל אם למשתמש יש הרשאה מסויימת על כך שהוא מנסה לבצע משהו ואז מתקבלת הודעה שאין לו הרשאה :-)
[Personal Site] [Blog] [Facebook]
-
אתן לך דוגמאות
אם יש הרשאות לגסט
set transaction isolation level read uncommitted; set nocount on; go create table #HasDbAccess (dbid int, hasdbaccess int) exec sp_MSforeachdb 'insert into #HasDbAccess select db_id(''?''), hasdbaccess from [?]..sysusers where name=''guest''' select name , case (case h.dbid when 1 then 3 when 2 then 3 else h.hasdbaccess end) when 3 then 'NUll' when 1 then 'Yes' when 0 then 'No' end from master..sysdatabases d join #HasDbAccess h on d.dbid=h.dbid order by d.dbid; drop table #HasDbAccess
בדיקת --Locked out logins
set transaction isolation level read uncommitted; set nocount on; go begin exec('select name from sys.server_principals where is_disabled=1 or LOGINPROPERTY(name, ''IsLocked'') = 1') end
בדיקת SQL Server configuration options affecting security
set transaction isolation level read uncommitted; set nocount on; go create table #sp_configure (name sysname, minimum bigint, maximum bigint,config_value bigint, run_value bigint) insert into #sp_configure exec master..sp_configure select name + '#' + cast(run_value as varchar) from #sp_configure where name in ( 'Ad Hoc Distributed Queries' ,'clr enabled' ,'default trace enabled' ,'Ole Automation Procedures' ,'remote admin connections' ,'SMO and DMO XPs' ,'SQL Mail XPs' ,'xp_cmdshell') drop table #sp_configure
אם יש לכם עוד בדיקות בסגנון אני אשמח לשמוע עליהם
לא חיייב גם את הסינטקס
מספיק לי רשימה של כמה בדיקות ומה מחפשים בהן
ואני כבר אחפור לעומק
תודה לעוזרים :) -
הי,
נראה לי שכיסית את רוב הדברים. הייתי מוסיף לרשימה:
1. SQL Server Logins עם הגדרות אבטחה לא מלאות (Enforce Password Policy ו-Enforce Password Expiration)
2. Logins שלא התחברו למערכת מעל X ימים ואולי אפשר למחוק
3. Credentials ו-Proxies שמוגדרים ב-Instance
4. End Points שמוגדרים ב-Instance
5. הרשאות לא סטנדרטיות ל-Public Role גם ברמת ה-Instance וגם ברמת ה-Database
6. Expiration Date של Certificates
7. שימוש ב-TDE
8. הגדרות של ה-Services של SQL Server (פורטים, Hide Instance, הצפנה, Logon Accounts, וכו')
9. הרשאות Impersonate ו/או שימוש ב-EXECUTE AS בקוד
10. שימוש ב-Instant File Initialization
אם אתה כבר כותב סקריפטים לכל הדברים האלה, נשמח אם תפרסם אותם כאן ותשתף את כולם.
בהצלחה!
-----------------------------
גיא גלנצר
יועץ ומדריך SQL Server
Madeira - SQL Server Services
http://www.madeirasql.com
- הוצע כתשובה על-ידי pituachMVP, Moderator יום שלישי 26 אוגוסט 2014 16:26
- סומן כתשובה על-ידי pituachMVP, Moderator יום רביעי 27 אוגוסט 2014 21:43
-
ביטלתי את סימון התשובה על התגובה שלי.
זו אינה תשובה אלא רק שאלה מכוונ להבנת השאלה המקורית.
* סימון התשובה יצר מצב שלא בדקתי את השאלה מפני שחשבתי שהיא סגורה.
[Personal Site] [Blog] [Facebook]
- נערך על-ידי pituachMVP, Moderator יום שלישי 26 אוגוסט 2014 16:29