一、常见的安全事件
1、“钓鱼”
(1)诱惑性标题
(2)仿冒真实网站
(3)骗取用户账号
(4)骗取用户资料
2、“篡改”网页
(1)关键字:Hacked by
(2)搜索引擎语法
Intitle:keyword标题中含有关键词的网页
Intext:keyword正文中含有关键词的网页
Site:domain在某个域名和子域名下的网页
3、“暗链”
(1)隐藏在网站当中链接
(2)网游/医疗/博彩/色情
(3)提高网站排名(SEO)
4、Webshell
(1)网页
(2)功能强大
(3)asp/php/ljsp
(4)后门程序
二、XSS
1、什么是XSS
(1)全称:Cross Site Script
(2)中文名称:跨站脚本
(3)危害:盗取用户信息、钓鱼、制造蠕虫等。
(4)定义:黑客通过“HTML注入”篡改网页插入了恶意脚本当用户在浏览网页时,实现控制用户浏览器行为的一种攻击方式。
2、XSS分类
(1)存储型:XSS脚本存储在数据库中,访问网页,触发XSS,可以通过访问网页源代码的方式来找到触发的位置点,可以配合使用火狐浏览器的firebug插件
(2)反射型:访问携带XSS脚本的链接,浏览器向后端发送请求,后端程序向URL中的XSS脚本数据写入响应页面并返回给浏览器,浏览器渲染响应页面触发XSS。
存储型与反射型区别:前者是从数据库中提取XSS脚本数据,后者是直接从URL中提取XSS脚本数据。
(3)DOM型:访问携带XSS脚本的链接,浏览器通过javascript从URL中提取XSS脚本数据并写入DOM中,触发XSS。
三、CSRF
1、CSRF是什么
(1)全称:Cross-site request forgery
(2)中文名称:跨站请求伪造
(3)危害:执行恶意操作(“被转账”、“被发垃圾评论”、制造蠕虫”等)
(4)定义:利用用户已登录的身份,在用户毫不知情的情况下,以用户的名义完成非法操作。
2、CSRF原理分析
(1)举例
用户可以从自己账户转账-->黑客不能从他人账户转账-->黑客构造恶意网页-->用户主动访问恶意网页,转账到黑客账户
(2)过程
通常Cookie当中会存放用户凭证信息-->浏览器在发送任何请求时,会自动带上已有的cookie-->通过Cookie识别用户身份后,执行转账操作
四、点击劫持
(1)定义:通过覆盖不可见的框架误导受害者点击而造成的攻击行为。
(2)特点:
隐蔽性较高
骗取用户操作
“UI-覆盖攻击”
利用iframe或者其它标签的属性
五、URL跳转
(1)定义:借助未验证的URL跳转,将应用程序引导到不安全的第三方区域从而导致的安全问题。
(2)实现方法
Header头跳转
Javascript跳转
META标签跳转
六、SQL注入(SQL Injection)
(1)定义:SQL注入攻击是通过将恶意的 SQL查询或添加语句插入到应用的输入参数中,再在后台 SQL服务器上解析执行进行的攻击,是一种常见的Web安全漏洞,攻击者利用这个漏洞,可以访问或修改数据,或者利用潜在的数据库漏洞进行攻击。
(2)特点
猜解后台数据库,这是利用最多的方式,盗取网站的敏感信息。
绕过认证,列如绕过验证登录网站后台。
注入可以借助数据库的存储过程进行提权等操作。
七、命令注入
1、命令可以做什么(以DOS命令为例)
(1)查看本地网络
(2)查看系统用户
(3)查看当前目录
(4)字符串查找
(5)复合命令:
命令拼接&,依次执行拼接的命令
管道符|,前面命令的输出作为后面命令的输入
2、WEB应用如何命令注入?
(1)调用可执行系统命令的函数
(2)函数或函数的参数可控
(3)拼接注入命令
八、文件操作
1、常见文件操作
(1)文件上传:上传头像、上传附件
(2)文件下载:下载应用、下载附件
2、你所不知道的文件操作
(1)文件上传:上传Webshell、上传木马
(2)文件下载:下载系统任意文件、下载程序代码
3、常见文件操作漏洞
(1)文件上传漏洞:正常功能,互联网产品不可或缺,如:上传头像、上传附件,如果文件处理不当,那么就可上传执行脚本、木马文件,如: webshell、木马exe。
文件处理不当:可以上传可执行脚本、脚本拥有执行权限
(2)任意文件下载:正常功能,互联网产品不可或缺,如:下载APP,下载附件,如果文件处理不当,服务器当中任意文件,如: php/aspx/jsp文件。
文件处理不当:未验证下载文件格式、未限制请求的路径
(3)文件包含漏洞:节约代码量,让程序美观,如:重复代码写入一个文件,如果文件处理不当,用户上传的恶意文件,或者远程文件,如:jpg/txt/php文件。