SQLMAP视频笔记

来源:互联网 发布:js 数据绑定 编辑:程序博客网 时间:2024/06/07 03:14

Sqlmap_01_扯淡


Sqlmap_02_内容概要

    1.注入的思想
        工程思维
    2.SQL的基础
        ⑴SQL语法规则
        ⑵数据库工作原理
    3.sqlmap操作(★)
        ⑴CUI语法习惯(Command User Interface)
        ⑵Sqlmap的功能
    4.精益求精的黑客思维
        ⑴不断思考和完善
        ⑵不断否定自己
        ⑶相信所有的理论都是假设
            “所有的物理都是假设”,所有的攻击思维和攻击理论都是假设的!

Sqlmap_03_咋样学习本课程

    1.预备知识:Burpsuite and WEB工作原理
    2.新的概念更实用

Sqlmap_04_注入的思想

    1.计算机系统的被注射者:提供接口+开发系统
    2.注射者
        ⑴怎么产生数据
        ⑵产生什么样的数据
        ⑶怎么发送数据

Sqlmap_05_搭建Sql环境

    1.mysql的用户root不能用远程连接,只能自己重新创建一个账户来远程登录
    2.数据库是服务端客户端架构(C/S)
    3.不同的服务端需要不同的客户端连接

Sqlmap_06_SQL基础

    1.数据库连接上了即相当于木马,SQL可以访问其他系统级文件
    2.等效功能模块
        ⑴工作模块
            ①控制数据库
            ②操作数据
            ③和操作系统交互等
        ⑵SQL解析模块
            ①将SQL转换城内部命令
            ②将内部命令转换成SQL
        ⑶通信模块
            ①身份识别
            ②权验证限
            ③接受数据
            ④发送数据

Sqlmap_07_sqlmap直接连接到数据库

    1.sqlmap的等效模块
        ⑴输入输出模块
        ⑵发送数据接收数据(网络通信)
        ⑶注入点探测和真正的攻击模块(数据生成模块)
    2.用sqlmap直接连接mysql数据库
        语句:./sqlmap.py -d mysql://user:passwd@host:端口号/数据库 其他参数
    3.sqlmap的部分参数的用法
        sqlmap可以用来连接mysql噢~

Sqlmap_08_A_获取数据

    1.用sqlmap显示数据库:./sqlmap.py -d mysql://user:passwd@host:端口号/数据库 --dbs
    2.显示表内容:./sqlmap.py -d mysql://user:passwd@host:端口号/数据库 --tables
    3.显示用户:./sqlmap.py -d mysql://user:passwd@host:端口号/数据库 --users
    4.sqlmap可以达到DBA级别

Sqlmap_08_B_自由获取数据

    1.参数:
        ⑴--sql-query=QUERY SQL statement to be executed
        ⑵--sql-shell Prompt for an interactive SQL shell(常用)
        ⑶--sql-file=SQLFILE Execute SQL statements from given file(s)
    2.用sqlmap获取宿主主机/etc/password文件(测试)
        ⑴./sqlmap.py -d mysql://user:passwd@host:3306/mysql --v6 --sql-shell
        ⑵sql-shell> CREATE TABLE sqlmapfile(data longtext)//必须
          [INFO].......
          [PAYLOAD](这个才是传出的数据)
        ⑶sql-shell>CREATE TABLE sqlmapfile(data longtext)
        ⑷sql-shell>select HEX(LOAD_FILE('/etc/passwd')) INTO DUMPFILE '/tmp/123'
        ⑸sql-shell>LOAD DATA INFILE '/tmp/123' INTO TABLE sqlmapfile FIELDS TERMINATED BY 'cc' (data)
        ⑹sql-shell>select MID(data,1,1024) FROM sqlmapfile
        ⑺sql-shell>select LENGTH(data) FROM sqlmapfile


Sqlmap_09_控制宿主机

    1.本课内容:
        ⑴Windows注册表操作
        ⑵获取宿主机shell
        ⑶读取和写入宿主文件
    2.File system access:
        ⑴--file-read=RFILE
        ⑵--file-write=WFILE
        ⑶--file-dest=DFILE
    3.Operating system access:(类似于木马类)
        ⑴--os-cmd=OSCMD    Execute an operating system command
        ⑵--os-shell        Prompt for an interactive operating system shell
        ⑶--os-pwn        Prompt for an OOB shell, Meterpreter or VNC
        ⑷--os-smbrelay        One click prompt for an OOB shell, Meterpreter or VNC
        ⑸--os-bof        Stored procedure buffer overflow exploitation
        ⑹--priv-esc        Database process user privilege escalation
        ⑺--msf-path=MSFPATH    Local path where Metasploit Framework is installed
        ⑻--tmp-path=TMPPATH    Remote absolute path of temporary files directory
    4.Windows registry access(8个,"./sqlmap.py -hh"查看)


Sqlmap_10_URL注入点

    1.部分参数:cookie/usr-agent/host/referer/proxy


Sqlmap_11_参数小结

    1.https://github.com/sqlmapproject/sqlmap/wiki/Usage
    2.可以使用配置文件可以更加方便
    3.知其所以然更为重要


Sqlmap_12_利用sqlmap学习sqlmap

    1.两个参数:-v6和--sql-shell
    2.用burpsuite学习sqlmap


Sqlmap_13_POST方式注入

    1.sqlmap可以用sqlmap.conf更加方便的操作
    2.sqlmap可以控制所有的HTTPS的请求头
    3.修改sqli的index.php的“method”,修改为POST;还有source的不同安全级别的代码,将$_GET改成$_POST就可以了(共两处)


Sqlmap_14_注入点识别相关参数

    1.可以加参数:--bath,会自动添加“Y”,然后没有询问
    2.如果Sqlmap无法探测到数据库类型,可以社工或者猜(大部分为Mysql)
    3.--tamper:可以对将Payload进行二次加工。在/tamper的目录下,可以调用一些python脚本。可以用在过防火墙上
    4.--skip-urlencode:可以跳过payload的加载。(encode是为了不让空格容易丢失)
    

Sqlmap_15_参数总结

    1.request里面的参数可以用来绕过防火墙



Sqlmap_16_防止SQL注入

    1.stringsplash($ID),这个语句会把空格干掉~类似的可以用DVWA设置不同的安全等级查看


Sqlmap_17_最后一课(总结)


(常涛视频截图)

0 0
原创粉丝点击