kali

kali安装:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

为了能放大窗口,下载工具:

 

 随后reboot

 外面的文件拖到里面:

 

 关闭锁:

 

 

 

 

 

 

 ctrl+shift+‘+’:放大字体

改变安装源位置:

 

 注释:

 

 插入第9,10行:

 

 更新软件包列表:

 

 

 

apt upgrade和apt dist-upgrade会根据列表去更新软件:

 

 

 

 

 

做个快照:

配置ip:

 

 

 

 配置DNS:

 2种重启网络服务的方法:

sshd使用ssh协议,利用xshell时要启动该服务

配置sshd并连接:

 

 

 

 

 

 

 利用xshell连接上,设置下载路径:

 

 上传文件到kali:

 

SQL注入

 information_schema库中有一个tables表,该表记录了所有库的所有表信息,其中字段table_name:表名,table_schema:该表所属的数据库名。每行代表一张表

 information_schema还有columns表,该表存储了所有的字段,其中column_name:字段名字,table_name:所属的表名,table_schema:所属的库名。每行代表一个字段

 位置:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

phpstudy是一个php环境,含有Apache,nginx服务器和mysql

进程操作:

Windows下查看进程及结束进程命令
1)查看占用8080端口的进程号
>netstat -aon | findstr "8080"
结果:TCP    0.0.0.0:8080           0.0.0.0:0              LISTENING       3500
可知,进程号为3500的进程占用了8080端口

可以使用命令 tasklist | findstr “3500”进一步查看3500进程的具体信息。
> tasklist | findstr "3500"
结果:javaw.exe                   3500 Console                 0     28,792 K
可知3500进程为javaw.exe。
2)杀掉进程
> taskkill /pid 3500 /F

设置phpstudy当输入localhost时,默认进入的地方:

 

 

 

mysql-font可以作为mysql客户端:

 

 

 

根据字典可以扫描网站后台可能的地址:

 

 

 

 

sqllab项目所使用的数据库用户名密码的文件的位置:

 创建sqlli-labs的sql语句:

DROP DATABASE IF EXISTS security;
CREATE database security;
USE security;
CREATE TABLE users
        (
        id int(3) NOT NULL AUTO_INCREMENT,
        username varchar(20) NOT NULL,
        password varchar(20) NOT NULL,
        PRIMARY KEY (id)
        );
CREATE TABLE emails
        (
        id int(3)NOT NULL AUTO_INCREMENT,
        email_id varchar(30) NOT NULL,
        PRIMARY KEY (id)
        );
CREATE TABLE uagents
        (
        id int(3)NOT NULL AUTO_INCREMENT,
        uagent varchar(256) NOT NULL,
        ip_address varchar(35) NOT NULL,
        username varchar(20) NOT NULL,
        PRIMARY KEY (id)
        );
CREATE TABLE referers
        (
        id int(3)NOT NULL AUTO_INCREMENT,
        referer varchar(256) NOT NULL,
        ip_address varchar(35) NOT NULL,
        PRIMARY KEY (id)
        );

INSERT INTO security.users (id, username, password) VALUES ('1', 'Dumb', 'Dumb'), ('2', 'Angelina', 'I-kill-you'), ('3', 'Dummy', 'p@ssword'), ('4', 'secure', 'crappy'), ('5', 'stupid', 'stupidity'), ('6', 'superman', 'genious'), ('7', 'batman', 'mob!le'), ('8', 'admin', 'admin');

INSERT INTO `security`.`emails` (id, email_id) VALUES ('1', 'Dumb@dhakkan.com'), ('2', 'Angel@iloveu.com'), ('3', 'Dummy@dhakkan.local'), ('4', 'secure@dhakkan.local'), ('5', 'stupid@dhakkan.local'), ('6', 'superman@dhakkan.local'), ('7', 'batman@dhakkan.local'), ('8', 'admin@dhakkan.com');

 

-- (这里有一个空格,--空格)在SQL内表示注释

但在URL中,如果在最后加上-- ,浏览器在发送请求的时候会把URL末尾的空格舍去,所以我们用--+代替-- ,原因是+在URL被URL编码后会变成空格。 

即url后面的--+表示注释

zzz

 

 

 

 

 

 

 

 

联合查询:

 

 

order by 20 :以第20列排序,出错则说明判断总列数<20

 

 

也可以用null来判断列数(下载hackbar便于调试):

测出总列数后:

 

 让union前面的为假,则显示后面的:

 

 

 

 

 

 

 

 

利用BP解码:

 

 

 

 

 

 

 

 注意:'cms_users'可能因为单引号出错,则转化为16进制编码,再执行

 

 

 

 

 

原理: 

 

 每行显示哪条记录随机:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 在kali中使用sqlmap :

 

 检测注入点:

 

显示可实现4种注入方法: 

 

列出所有数据库的名字:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 开启抓包工具,然后进入登陆界面输入密码,让抓包工具抓住包,然后复制包内容:

 

 粘到文件里面:

 

 读取http数据包进行sql注入的测试:

 为了实现导入导出操作(读目标主机的文件或者向目标主机写文件),设置变量secure-file-priv,重启mysql:

 

 

 

 查看是否对文件具有操作权限:

 

 读取服务器中指定位置的文件:

 

 向服务器某个位置写入文件,文件内容是1,2,3....:

 注入别的内容:

 

宽字节注入:

 

posted @ 2020-02-22 13:31  Jary霸  阅读(471)  评论(0编辑  收藏  举报