Chapter 2 User Authentication, Authorization, and Security(3):保server避免暴力袭击


原版的:http://blog.csdn.net/dba_huangzj/article/details/38756693,专题文件夹:http://blog.csdn.net/dba_huangzj/article/details/37906349

未经作者同意。不论什么人不得以“原创”形式公布,也不得已用于商业用途,本人不负责不论什么法律责任。

前一篇:http://blog.csdn.net/dba_huangzj/article/details/38705965

前言:

暴力攻击(Brute-force attack)是通过差点儿全部可能的字符组合尝试破解password。或者使用一个字典表。包括差点儿全部可能的password来实现password破解的方法。假设你的password非常easy,那么非常快就会被破解。

所以,測试password是非常重要的。

实现:

1. 首先查找SQL password没有使用强制password策略的:

SELECT name, is_disabled 
FROM sys.sql_logins 
WHERE is_policy_checked = 0 
ORDER BY name;


2. 然后对这些登录使用强password策略:

ALTER LOGIN Fred WITH CHECK_POLICY = ON,CHECK_EXPIRATION = ON;


这个命令不会更改现有password,直到password过期前password依旧有效。

能够使用以下函数检查password到期时间:

SELECT LOGINPROPERTY('Fred', 'DaysUntilExpiration');


3. 你还能够强制在登录时改动password,可是须要先提供一个协商好的password并告知使用者,比方以下的代码,就是把Fred这个登录名强制登陆时改动password,然后你使用了You need to change me ! 这个作为“初始password”,你须要告知用户,登陆时使用它,登录成功后会提示你改动password。

ALTER LOGIN Fred WITH PASSWORD = 'You need to change me !' MUST_CHANGE, CHECK_POLICY = ON, CHECK_EXPIRATION = ON;


原文出处:http://blog.csdn.net/dba_huangzj/article/details/38756693

4. 能够使用脚本把全部须要改动的登录名全部显式出来:

SELECT  'ALTER LOGIN ' + QUOTENAME(name) + ' WITH PASSWORD = ''You 
need to change me 11'' MUST_CHANGE, CHECK_POLICY = ON, CHECK_ 
EXPIRATION = ON; 
' 
FROM    sys.sql_logins 
WHERE   is_policy_checked = 0 
ORDER BY name;


假设须要在应用程序中同意用户改动他们的password,能够參照这篇文章:http://msdn.microsoft.com/zh-cn/library/ms131024.aspx (以编程方式更改password)

原理:

最好的保护password避免暴力攻击的方法是使用WIndowspassword策略,由于它仅同意你使用强password。

另外暴力攻击password会在SQL Server的错误日志和Windows的事件日志中留底。

SQL登录的password或密钥是不存储在不论什么系统表中。仅存储password的hash值,也就是说没有办法解密。hash值会存储在系统表中,以便兴许登录时与传输的password使用hash函数生成的hash值匹配。

原文出处:http://blog.csdn.net/dba_huangzj/article/details/38756693

很多其它:

过期策略的当中一个组成部分是【lockout threshold】。假设要启用对SQL 登录的失败尝试锁定,须要对CHECK_POLICY 选项设为ON。而且把你的帐号锁定策略在Active Directory或者本地配置。

能够使用以下语句查询是否有锁定的帐号:

SELECT name 
FROM sys.sql_logins 
WHERE LOGINPROPERTY(name, N'isLocked') = 1 
ORDER BY name;
原文出处:http://blog.csdn.net/dba_huangzj/article/details/38756693

下一个:http://blog.csdn.net/dba_huangzj/article/details/38817915

优质内容筛选与推荐>>
1、深度学习(十五) TextCNN理解
2、Servlet Class5
3、优先队列
4、2018年福泉中高级工程师职称评审条件及流程
5、06-复杂度来源:可扩展性


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号