web渗透第一步之信息搜集 [win 2008 配置pptp]


0x01 什么是vpn:

1
2
3
4
学名称虚拟专网,即在公共网络中搭建的一条专有通道
当用户连接到vpn服务器时,只需提供正确的账号密码即可进入到这条专用通道内,之后所有的通信数据也都会被这层通道包裹着来回传输
上面这样说可能有点儿不太形象,你可以把它想成我们之前所说的正向代理,或者'翻墙'
当然啦,vpn的用途远远不止这点,下面我们开始细说

下面是一些vpn应用场景:

1
2
3
4
5
6
7
1,公司员工想在家里通过公网直接访问到公司内网的服务器,即远程办公
2,学生放假回家,想在家里直接通过公网访问到自己学校内网的图书馆网站查阅资料
3,公司有好几个机房,现在有需求,希望把分布在各地的机房内的机器都连到同一个内网中(当然啦,域也是一种方案)
4,大型跨国组织公司想把分布在不同国家不同地域的分支机构连到同一个内网中,方便大家处理公司业务
5,通过各种类型的vpn隧道来bypass掉天朝的gfw
6,入侵者希望通过vpn来暂时性的隐匿自己[你知道的,tor也许会更好,有机会再说]……
7,等等……

0x02 一些常见的vpn隧道协议:

1
2
3
4
PPTP: 点对点隧道协议,其将控制包与数据包分开,控制包采用TCP控制,加密通信,搭建过程极其方便简单,非常适合个人使用
L2TP: PPTP和L2TP两种连接类型在性能上差别不大,可以把L2TP理解成pptp的升级版,如果使用PPTP不正常,可更换为L2TP
IPSEC(Openswan):把来回通信的数据加密放到隧道中传输,然后就是正常的封装和解封装过程,防止中间人窃听,常用于多个不同地域的机房内网互连
SSLVpn(openvpn):它的技术核心是虚拟网卡,基于SSL协议(加密库)实现,这也意味着它全程通信加密,而且非常稳定,也是个人极力推荐可用于实战渗透用途的vpn,跟其它vpn有些不一样的是,它属于C/S架构软件[即需要客户端和服务端],深入的通信过程还是比较复杂的,这里就不细说了,搭建自然也会稍微繁琐一点

0x03 接下来,我们就来简单搞搞清楚vpn的大致工作流程,为了让大家能够快速理解这个东西,会尽量说的比较简单通俗一些,当然,vpn具体的工作细节还是非常复杂的,不过,那并不是咱们今天的重点,我们只需要会搭建,会使用,能排一些简单的错[会看日志]即可,暂时不必过于深究协议层的东西,毕竟,你并非想自己开发各类vpn工具,大多时候学习亦是如此,要取舍得当,别偏离重点了就行,下面是我用自己的话对vpn工作特性的一点简要叙述,可能听着不太专业,但目的也是为了让大家更好的去理解,毕竟我们并不是在搞学术研究,所以,大可不必在一些专业名词上死扣,那样对我们的实际技术的提高其实并没有多大帮助,不是吗,废话说完,咱们就来粗略走一遍vpn的通信过程:

1
2
3
4
5
6
7
正常情况下我们和公网进行的任何通信,都必须先通过本地'网关'出去,再通过'网关'回来[俗称nat转换]
你可以暂时把vpn想成你家里的路由器,因为它们在功能上有些类似,我们知道,在家里,正常上网的情况下是通过本地路由网关实现的
但一旦你连上了vpn,以后上网的网关就不再是你家里路由器上的那个了,而是你vpn服务器上的'vpn网关'
因为在你拨通vpn以后,你的机器就会进入到vpn的内网中,而这个网关自然就变成了vpn服务器上的那个网关
也就是说你和公网进行的任何通信都要先交给vpn网关,回来的数据再通过vpn网关[nat],经过vpn隧道响应给你
举个简单的例子,当你挂上vpn以后去访问某个网站,用于解析域名的dns,其实是你vpn服务器所在的ip的当地的dns服务器
这样看来,也就不难理解为什么vpn会慢了,因为你每次请求响应都要经过两层节点,家的路由器网关和vpn网关,数据也都是通过包裹[封装]在vpn隧道中返回给你的

0x04 vpn对于我们实际渗透的意义,至于它在真实生产环境的好处,这里就不说了,可自行谷歌,对于一些大型跨国公司或组织,vpn还是一种比较靠谱的协作方案

1
2
3
4
1)隐藏入侵者真实ip,作为入侵者的第一道保护屏障,能熟练快速配置各类vpn是每个入侵者最基本的基本功,如果条件允许的话,你甚至可以多套几层vpn,无疑,这样速度肯定也会慢很多
2)加大目标溯源取证的难度和成本
3)灵活性好,主要是拥有了一台自己可以随意操作的公网ip,这样在实际渗透中会帮我们很多的忙
4)是所有入侵者,真正走向入侵的第一步

0x05 理解了vpn大致的工作流程以后,具体的配置就非常简单了,这里暂时以win下的pptp为例,进行一些实际的搭建配置

1
2
3
4
5
6
7
8
因为用vpn的主要目的还是为了保护我们自己,所以对于vpn的宿主系统,一系列的安全策略是非常必要的,比如,在win中你可以通过tcp/ip筛选限制3389[端口最好不要默认],vpn,还有你自己经常要用的这几个端口流量可以正常进出,其余的端口一律禁止,另外,启用系统禁ping,尽可能防止别人ddos,最好不要再在vpn服务器上同时搭建别的服务,尽可能减少别人下手的机会,总之,跑的东西越少越好,恪守'最少服务'原则,当然,如果别人手里有个可以随意远程溢出的0day,那就没什么好说的了,要想真正彻底防住,几乎是不太现实的,我们只能尽自己的能力,尽可能的保护自己,最后建议大家在实际渗透中全部用英文系统,具体原因你应该懂的,对了,还有防火墙,你可以根据自己的实际需求来,开了筛选,其实防火墙你就可以不用开了……
尽可能的禁用掉系统和vpn的各种日志审核记录功能及其所对应的服务,在系统里留的日志越少越好(防止被反渗透),记得定时上去看下日志,如果没看到什么特别的情况,定时把日志清空一下,方便自己分析
条件允许的情况下,务必把系统补丁打到最新,改掉rdp的默认端口,用户密码要严格遵守复杂性要求,大小写数字特殊字符随机排列,越随机越好,长度推荐至少12位以上,防止无聊的人爆破,如果是团队共用vps,密码最好一个人知道就可以了,严禁管理权限泛滥……
推荐在vpn上装个wireshark,可以时常去看看机器流量,或者留个隐蔽点的监控脚本也行,尽可能防止被别人反桶回来,不要以为哪些只是电影里才会出现的场景[很正常的情况],谨慎小心,方得永生……
切记千万不要在vps上保留任何容易暴露私人信息的任何东西,这极度,非常,特别重要,包括在各种工具里的有可能暴露私人信息的特征也务必要全部清干净……
用于入侵的vps,推荐一个月换一次,最迟两月换一次,换机房,换ip段,换国家,搞定一个项目后,最好把vps系统也都重装一下,买vps,尽量找一些靠谱的厂商,擦亮你的眼睛,这个也非常重要……
尽量不要经常利用vps进行任何大流量的动作,其实,在大多数的入侵过程下,我们根本没必要大规模持久性扫描,极易容易触发报警而被机房封,如果你经常干这事儿,只能说明你的入侵思路可能有问题,不妨多换换姿势,一般工具能扫出来的洞,基本人工很快也能看到了,好了,忍不住多说了一句废话,这方面的东西,后面还会大量的篇幅专门进行说明,这里就先到此为止吧
上面提供的仅仅都是一些极其简单的参考建议,其他更多的注意事项,最终还是要根据您自己的实际需求来……

0x06 说完简单的注意事项后,我们准备开始真正在windows server 2008R2上配置pptp vpn

1)首先,找到’服务’,关闭并禁用 “windows防火墙” ,将’远程路由’设为自启动,之后重启系统(防火墙关了以后,最好重启下)

2)重启完毕进入系统,打开’服务器管理器’,找到’角色’,点击’添加角色’,勾选’网络策略和访问服务’,然后再勾选’路由和远程访问’,点击’安装’



3)下面是具体的安装过程和安装完成后的状态,安装完成后点击关闭,回到’服务器管理器’中

4)安装过程中如果没什么问题,我们就开始配置pptp,到’服务器管理器’中,右键’路由远程访问’,点击’配置启用远程路由访问’,选择’自定义配置’

5)勾选’vpn’和’nat’ ,点击完成,即可开始自动安装并启动vpn服务,中间会提示个警告,说网络策略服务冲突,因为我们根本没配置nps,所以就不用管它了

6)选择启动服务,启动以后它会应用刚才的配置到服务中,配置完成后,vpn的配置界面就会自动跳出来

7)此时右键’路由和远程访问’,选择’属性’,找到’ipv4’选项,设置为’静态ip地址池’[这个ip地址池其实就是vpn的内网ip段],并禁用该选项日志记录功能


8)在下面的’ipv4’中,找到’公共’选项,右键属性,禁用该项日志

9)右键 ‘igmp属性’,禁用该项日志

10)右键’nat’,新建网卡接口,这里有两个接口,一个外网卡,一个内网卡,这一步非常关键,一定要在内网卡上启用nat

(1)首先,新建外部网卡接口,’internal’,从名字也应该能判断,这个肯定是用于公网通信的外网卡

(2)之后再右键新建网卡建接口,这个网卡是用于vpn内网通信的内网卡,记得务必在此网卡上勾选启用’nat’

11) 至此,pptp vpn服务端就算搭建配置完成了,不过,现在我们还没有用于登陆vpn的账号密码,所以,需要先新建一个系统用户(没错,win下的pptp vpn用户直接就是系统用户),并赋予其拨入权限,记得一定要用户给拨入权限,要不然客户端是拨不上的,其实,到这里你可能会忍不住多想一下,既然vpn用的是系统用户,如果目标也配置并开启了vpn服务,我们是不是可以直接给它的管理员悄悄的赋予下拨入权限,然后作为我们进一步渗透内网的桥梁岂不是很好,这里我们暂时先这样想着,后续,还会有大量的篇幅对这些东西进行详细的说明


12) 看下pptp服务器所在的ip,然后开始到客户端系统中配置vpn,进行连接测试,这里以win7作为客户端系统,看到vpn已正常连接,在客户端系统中也会多一个ip,其实就是vpn内网ip地址池里设置好的ip段,之后再在win7上ping下vpn服务器的内网ip,看看能不能通,能通基本就没什么问题了





13) 这时,我们在服务器端已经看到有一个vpn客户端在线,pptp的默认端口是1723

一些小结:
    至此,在windows 2008上的pptp vpn配置基本就全部完成了,可以看到,整个过程并没什么实际的技术含量,在这儿也就不多做说明了,当然vpn对我们的作用也并非仅限于于此,后面在实际的渗透过程中,还有更详细的说明,虽然这次是在2008上配置的,但和在2003,2012上配置pptp几乎没什么区别,基本流程都差不多,最多可能安装的地方不太一样,希望大家能举一反三,多尝试,熟了就好了