T3SEC —–第三讲:web应用安全

{% meting "2111364820" "tencent" "playlist" "theme:#FF4081" "mode:circulation" "mutex:true" "listmaxheight:200px" "preload:auto" "autoplay" %}

OWASP--Open Web Application Security Project 组织.开源. ---会员 发送邮件到member@owasp.org.cn即可参加.

ISC---CISSP

OWASP Top10(10大应用安全风险)

1.注入

2.失效的身份认证和会话管理

3.XSS -跨站脚本攻击

4.不安全的对象直接引用

5.CSRF --跨站请求伪造

6.安全的错误配置

7.限制URL访问失败

8.未验证的重定向转发

9.应用已知的漏洞组件

10.敏感信息泄露

一.SQL注入漏洞

1.原理:

2.流程:

  • 注入点探测
    • 自动探测-WEB漏扫工具 , AWVS APPSCAN OPENVAS nessus OWASP ZAP .Burpsuite
    • 手动探测--手工构造payload
  • 信息获取
    • 环境信息:数据库类型,数据库版本,操作系统类型版本,用户信息
    • 数据库信息:库民,表名,字段名,数据值---(后台管理员账户密码)
  • 获取权限
    • 获取操作系统权限,通过执行shell,上传大马或者小马

3.探测方法

  • sqlmap工具
    • 五种注入类型
    • 盲注
    • 联合注入
    • 二次注入
    • 堆叠
    • xxx
  • 手工
    • 整型
    • $="select * from users where name=$name and pass = $pass";
    • $="select * from users where name= or 1=1 # and pass = $pass";= select *fro users;
    • 字符型
    • $="select * from users where name=''$name' and pass = '$pass' ";
    • $="select * from users where name=' ' or '1'='1' #'' and pass = $pass";
    • 搜索型
    • $="select * from users where password like '%' or 1=1 and '%'='%' order by password ;

sqlmap需要python环境

sql常用用法

sqlmap - u url地址/参数=值 --dbs 爆库爆表

sqlmap - u url地址/参数=值 --os -shell 获取shell

sqlmap - u url地址/参数=值 --level 5 -risk=4 四个风险级别 五个优先级

sqlmap - u url地址/参数=值 --file-read "C:\1.sh"读取文件

sqlmap - u url地址/参数=值 --file-write shell.php --file-dest "C:\www\XXXXX"

4.建议下载安全狗,设置绕过练习

tamper脚本 --python基础编程,协议分析,数据库语法及编程,SQL注入漏洞原理

二.XSS-跨站脚本(铁三赛中不会体现)

三.上传漏洞(必考)

上传绕过:

1.客户端:js检查

2.服务器端:

  • 检查后缀:
    • 黑名单:可解析的后缀 .php .xxx 上传伪静态文件.htacsses 点绕过 空格绕过;::$DATA绕过
    • 白名单:%00 截断 ,0x00 截断,MIME绕过
  • 检查内容:文件头,图片getimagesize(),二次渲染
  • 代码逻辑:条件竞争

upload-labs 靶场环境部署,联系上传

四.CSRF (应该不考)

五.SSRF服务器端请求伪造

由攻击者构造的请求,由服务器发起请求的安全漏洞

一般目标:外网无法访问的服务器.

六.暴力破解漏洞

账户密码,静态验证码 ---暴力破解

建议:

  • 先准备一套字典

Hydra-九头蛇(ftp,ssh,relent,mysql等)

Burpsuite 测试器4种:

七.命令执行漏洞

程序调用系统函数,php,哪些函数会调用系统:

1.远程命令执行漏洞

eval()

assert()

preg_repalce()

2.本地命令执行漏洞

system()

shell_exec:

exec:

八.包含漏洞

使用文件包含漏洞,在包含文件时服务器未对用户设置的值进行检查

include()

include_once()

require_once()

require()

九.XXE漏洞

读取任意文件,执行系统指令,,,,,,

十.反序列化漏洞

先了解php反序列化是啥

Q.E.D.