测试大纲
一、口令破解
完成情况:完成
1.暴力破解
暴力破解 可以理解猜测所有的密码组合 使用all目录下的字典文件来演示这个所有的密码(图1.1)。
2. 猜测密码
猜解密码 基于常用的密码进行扫描。从设置密码的习惯上分析,喜欢用重复的数字, 姓名拼音、英文名、手机号、出生日期、邮箱前缀、伴侣姓名拼音、特殊意义的数字、键盘顺序按键组合等(图1.2)。
图1.1暴力破解
图1.2密码猜解
二、SQL注入
完成情况:完成
sql注入针对的是表 一般在系统中会经常出现 比如 我现在有一个sql登录校验用户是否存在 以及密码是否正确
t_user这张表里有2条数据 admin和test 密码都为123456
正常传值是 传递用户名 admin 密码 123456
登录校验成功 类似这样
select * from t_user a where a.USERNAME='admin' and a.PASSWORD='123456'
图2.1
但是如果传递的值是这样的,用户名传递 ' or 1='1 密码随便一个数字 123
用户名传递 test' or '1'='1 密码随便 但是也可以查询出数据
select * from t_user a where a.USERNAME='test' or '1'='1' and a.PASSWORD='123'
这个破坏性会很大 sql被修改了 或者还可以这样
虽然传递过去了 但是被注释了 后面没执行
select * from t_user a where a.USERNAME='test' --or '1'='1' and a.PASSWORD='123'
图2.2
现在回到程序SqlInjectionDemo 这个就是用来演示sql注入
login2 是正常的 防止了sql注入
login 不能防止sql注入 输出了数据信息
图2.3
三、提权
提权 即低权限的账户 通过漏洞提升权限 执行一些原本不能操作的命令或者功能
1. 通过上面的口令破解来进行提权。即登录以破解的sys,执行grant语句来提取
图 3.1登录以破解的账户
图 3.2提权
2. 如图3.3.所示,我们将模式修改为提权,然后填入账号密码,点击连接,连接成功后,我们发送一条系统的shell语句whoami,当我们进行提权操作后,就会出现如图3.4所示,输出当前系统的信息。
如图3.3模式
如图3.4提权