一、常见的安全事件
关键字:
Hacked by
暗链--修改网页
webshell--上传后门
web安全可分为
客户端:
XSS, CSRF, 点击劫持, URL跳转
服务器:
SQL注入, 命令注入, 文件操作类
二、客户端漏洞
2. 最常见的XSS漏洞:
2.1 什么是XSS?
跨站脚本!
概念:
黑客通过“HTML注入”篡改网页,插入了恶意脚本(在数据库中),当用户在浏览网页时,实现控制用户浏览器行为的一种攻击方式。
危害:盗取用户信息,钓鱼,制造蠕虫等。
XSS漏洞,分成三类:
存储型:经过后端,经过数据库
反射型:经过后端,不经过数据库
DOM:不经过后端,DOM—based XSS漏洞是基于文档对象模型Document Objeet Model,DOM)的一种漏洞,dom - xss是通过url传入参数去控制触发的。
https://blog.csdn.net/u012991692/article/details/79916288
存储型XSS: 1.黑客植入XSS脚本; 2.用户访问XSS脚本的页面中毒。
反射型XSS:访问写带XSS脚本的链接,通过URL,直接触发XSS
DOM型XSS:访问写带XSS脚本的链接,触发XSS
课程回顾:
2.2 CSRF漏洞
- 什么是CSRF?
跨站请求伪造!
原理概念:
利用用户已登陆的身份,在用户毫不知情的情况下,以用户的名义完成非法操作
危害:
执行恶意操作(“被转帐”,“被发垃圾评论”等)
制造蠕虫
。。。
2.3 点击劫持
1答:通过覆盖不可见的框架,误导受害者点击,从而造成的攻击行为。
特点:
隐蔽性高;
骗取用户的操作;
“UI-覆盖攻击”;
利用iframe或者其他标签的属性。
点击劫持是一种视觉上的欺骗手段。攻击者使用一个透明的、不可见的iframe,覆盖在一个网页上,然后诱使用户在该网页上进行操作,此时用户将在不知情 的情况下点击透明的iframe页面。通过调整iframe页面的位置,可以诱使用户恰好点击在iframe页面的一些功能性按钮上。
2.4 URL跳转,URL跳转漏洞
- url跳转漏洞是什么?
定义:借助未验证的URL跳转,将程序引导到不安全的第三方区域,从而导致的安全问题。
2. URL跳转的实现方法?
实现方式:
Header头跳转
JavaScript跳转
META标签跳转
3. 漏洞的利用方法?
三、服务端漏洞
3.1 sql注入漏洞
重点:
- 什么是万能密码?
定义:
是一种常见的web安全漏洞,攻击者利用这个漏洞,可以访问或修改数据,或者可利用潜在的数据库漏洞进行攻击。
所谓的万能密码:本质是就是sql注入的一种利用方式。
- 什么是SQL注入?
- SQL注入的原理,条件和本质?
SQL注入的必备条件:
- 可以控制输入的数据;
- 服务器要执行的代码拼接了控制的数据
SQL注入的本质:
数据和代码未分离,就是数据当作了代码来执行。
3. SQL注入漏洞的利用方法和危害?
①. 获取数据库信息:
管理员后台用户名和密码;
获取其他数据库敏感信息:用户名,密码,手机号,身份证,银行卡等。。。
②.获取服务器权限:
植入webshell,获取服务器后门;
读取服务器敏感文件;
万能密码等。。。
3.2 命令注入漏洞
重点:
- 什么是命令?
- 命令注入的三个条件?
调用可执行系统命令的函数;
函数或函数的参数可控;
拼接注入命令。
3. 命令注入的攻击过程
DOS(win+R +cmd),可以做什么?(查看本地网络;
查看系统用户;
查看当前目录;
字符串查找;
复合命令:
举例:
命令拼接¥,一次执行拼接的命令:
管道符|,前面命令的输出作为后面命令的输入。
命令注入详解:
3.3 文件操作漏洞
重点:
文件上传漏洞:可以导致直接上传webshell。。。
任意文件下载漏洞:可以导致下载程序代码。。。
文件包含漏洞:可以直接/间接获取webshell。。。
常见的文件操作:
文件上传:
上传头像,
上传附件。。。
文件下载:
下载应用,
下载附件。。。
1. 文件上传漏洞:
原因:文件处理不当:
- 可以上传可以执行脚本;
- 脚本拥有执行权限。
漏洞利用:
2. 任意文件下载漏洞:
- 解析下载请求地址;
- 直接访问下载
原因:文件处理不当:
- 未验证下载文件格式;
- 未限制请求的路径
漏洞利用:
3. 文件包含漏洞:
原因:文件处理不当:
用户上传的恶意文件,或者远程文件。
文件包含漏洞:
本地文件包含:
包含本地服务器的文件。
远程文件包含:
包含远程文件,通过发送http(或者其他网络请求),导致远程恶意文件。
咱们测试注意事项:
allow_url_fopen=On (是否允许打开远程文件)
allow_url_include=On (是否允许包含远程文件)