一、Web安全漏洞概念及原理分析
1.2
跨站脚本攻击(XSS)
概念:通常指黑客通过“HTML注入”篡改了网页,插入了恶意的脚本,从而在用户浏览网页时,实现控制用户浏览器行为的一种攻击方式。
全称:Cross Site Script(本来缩写是CSS,但是为了和层叠样式表CSS有所区别,所以在安全领域叫做“XSS”)
危害:盗取用户信息、篡改页面钓鱼、制造蠕虫等。
XSS分类:存储型、反射型、DOM型
反射型XSS
反射型XSS只是简单地把用户输入的数据“反射”给浏览器。也就是说,黑客往往需要诱使用户“点击”一个恶意链接,才能攻击成功
如下,查询name信息,正常用户请求:
如果那name参数1修改成,则显示结果:
存储型XSS
如下,正常留言或者评论,显示如下:
如果将message信息写成,则显示
DOM XSS
基于DOM型的XSS是不需要与[服务器](https://cloud.tencent.com/product/cvm?from=10680)端交互的,它只发生在客户端处理数据阶段。
下面一段经典的DOM型XSS示例。
上述代码的意思是获取URL中content参数的值,并且输出,如果输入http://www.xxx.com/dom.html?content=,就会产生XSS漏洞。
各种类型原理分析
SQL Map实例
第一步:查看该网站是否存在sql注入漏洞
结果得出,该服务器类型是Windows 2003 or xp,[数据库](https://cloud.tencent.com/solution/database?from=10680)类型是Access。
02
第二步:使用- -tables参数,猜测表名称
结果得出,猜测到了5个table的名称。
03
第三步:猜测admin_user表的内容
结果显示,admin_user表中有admin, data, id, password字段。
04
第四步:猜测admin_user表中admin, password字段的内容
结果得出用户名admin和密码,密码是md5加密显示的,下面解密密码为:
下面总结下使用sqlmap注入网站的简单步骤(Access数据库)
第一步:猜测是否可以进行注入
第二步:猜表名
第三步:根据猜测到的表名猜测表中的字段
第四步:根据猜测的字段名称猜测表中的字段值
SQL Map参数有很多,大家掌握常用的命令参数即可。
BeEF实战
BeEF是一个很强大的XSS演示平台,BeEF有一个控制后台,攻击者可以在后台控制前端的一切。
假如“http://www.xxx/abc.php?id=1”存在xss攻击漏洞,则可以构造攻击URL为:
http://www.xxx/abc.php?id=”,把构造好的攻击URL通过邮箱、qq或者论坛等途径发送给用户,诱导用户点击,则BeEF服务端即可显示访问用户的信息。
Commands模块下,有更多的操作可以cookie、用户提交的数据、乃至操作用户浏览器等。
BeEF功能很强大,感兴趣的可以深入的研究,本示例一是说明该工具的功能之强大,也是说明一旦存在XSS漏洞被攻击者利用,后果的严重性大家可想而知。
信息收集
Google hack常用语法
intitle:搜索网页标题中包含有特定字符的网页。例如输入“intitle: cbi”,这样网页标题中带有cbi的网页都会被搜索出来。
inurl:搜索包含有特定字符的URL。例如输入“inurl:cbi”,则可以找到带有cbi字符的URL。
intext:搜索网页正文内容中的指定字符,例如输入“intext:cbi”、"intext:管理后台"。这个语法类似我们平时在某些网站中使用的“文章内容搜索”功能。
Filetype:搜索指定类型的文件。例如输入“filetype:cbi”,将返回所有以cbi结尾的文件URL。当我们在查询里边包含filetype:扩展名的时候,Google会限制查询结果仅返回特定文件类型的网页。例[资产评估 filetype:pdf],这个查询将会返回所有文件类型为pdf的资产评估信息。其它可用的特定文件类型格式查询还有doc ,txt,ppt,xls.rtf,swf,ps等。
Site:找到与指定网站有联系的URL。例如输入“Site:imshixu.com”。所有和这个网站有联系的URL都会被显示。
site:xx.com filetype:txt 查找TXT文件 其他的依次内推
site:xx.com intext:管理
site:xx.com inurl:login
site:xx.com intitle:后台
查看服务器使用的程序
site:xx.com filetype:asp
site:xx.com filetype:php
查看上传漏洞:
site:xx.com inurl:file
site:xx.com inurl:load
查找注射点:
site:xx.com filetype:asp
site:xx.com filetype:php
查看上传漏洞:
site:xx.com inurl:file
site:xx.com inurl:load
查找注射点:
site:xx.com filetype:asp
site:asp?id= Index of:利用”Index of”语法检索出站点的活动索引目录 Index 就是主页服务器所进行操作的一个索引目录。 黑客们常利用目录获取密码文件和其他安全文件。常用的攻击语法如下: Index of /admin 可以挖掘到安全意识不强的管理员的机密文件: 黑客往往可以快速地提取他所要的信息### 如何入门网络安全
建议
多看书
阅读永远是最有效的方法,尽管书籍并不一定是最好的入门方式,但书籍的理解需要一定的基础;但是就目前来看,书籍是比较靠谱的入门资料。
现在Web安全书籍比较多,因此大家在学习的过程中可以少走了不少的弯路。如果以上推荐书籍阅读有困难,那就找自己能看得进的 Web 安全的书
当然纸上谈兵终觉浅,最好还是实践一下。
对于那些没有学习方向和资料的同学,可以看下我整理的资源,这份资料经历过社会的实践,可以说是当下全网较全的网络安全知识体系:
①网络安全学习路线
②20份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥网络安全必备书籍
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析
