Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >SMB扫描

SMB扫描

作者头像
意大利的猫
发布于 2020-08-20 03:09:35
发布于 2020-08-20 03:09:35
3.1K0
举报
文章被收录于专栏:漫流砂漫流砂

ServerMessage Block

SMB协议大家应该都有所了解,毕竟2017年的MS17-010血洗整个互联网,加上之前的MS08-067 漏洞,这些都是SMB协议上出现过的著名漏洞

SMB 主要完成的工作主要就是文件共享,假如同一个工作组使用smb 互相传输文件

SMB 协议还可以被用在sql注入的带外通道上,我曾经遇到的一个CTF的题目就是考察这个考点·,遗憾的是当时没有公网IP,后来发现很多网站已经集成了接收SMB信息的功能

端口

139,445

直至Windows10,微软才默认SMB服务关闭状态(即使很多人根本就没有感知)

版本信息

SMB1 win2000/xp/win2003

SMB2 winvista sp1/win2008

SMB2.1 win7/win2008 r2

SMB3 win8/win2012

SMB最初版本的时候存在一个空会话访问的问题,这可以说是一个很古老的漏洞了,如果你看08年左右的书应该会看到IPC$ 空会话连接等攻击手段,我在两年前尝试过复现这个漏洞,由于当时技术差也没有复现成功,如果现在再进行复现也没有太大的意义了

空会话访问我们可以获取到的信息

密码策略

用户名

组名

机器名

用户和组的 sid

这些信息都是对于我们十分重要的,就拿一个不起眼的密码策略来说明吧!

密码策略规则规定了密码的最基本条件,比如至少多少位,包含几种字符,很多时候我们在提权建立账号时候就因为不满足密码策略而失败,失败之后还一头雾水

由于Windows用户众多,而且SMB协议也是经常使用的一个协议,所以Linux也自己实现了一个类似的Samba服务,这个服务也是这两个端口,并且可以与windows 上的SMB服务对接


关于RID

windows系统中用来区分用户的就是RID

administrator500

Guest 501

自己创建的 1000+

关于SID

SID是由计算机的一些不确定的因素产生的一个随机字符

一般SID+RID成为一个完整的SID

SMB 和SAMBA 都是工作在ISO七层模型中的第五层:会话层

关于Netbios

Network basic input output system

netbios是原来TCP/IP协议未推广时期工作在会话层的一个协议,TCP/IP协议推行后也兼容netbios

netbios实现文件共享主要识别主机靠的就是netbios名称,每一个主机都有,一般都是取主机名的前15个字符

在windows的cmd下可以使用

c:/>hostname 查看主机名

c:/>nbtstat -A 192.168.1.1 查看netbios信息,其中192.168.1.1是自己的IP

可以查看主机的netbios名称

如果netbios的字符不足15个,netbios会添加空格补齐15个

准确得说netbios的名称是16个,最后一个字符是一个16进制数,用来标明服务类型 20表示文件服务器

TCP/IP成为事实协议标准后,内网中也开始使用dns做域名解析,TCP/IP作为传输协议,NetBT负责将netbios的名称解析成IP地址,以供Netbios正常工作,这个也叫做 NetBios over TCP/IP (简称NetBT)

NetBIOS提供标准网络通信接口

就是说程序员在设计的时候基于netbios的程序不需要在考率TCP/IP怎么样,只需要实现这个接口就行了

UDPport 137 (name services) 名称服务(名称解析,名称注册)

UDPport 138 (datagram services) 数据段,数据报文服务,通过这个段阔传输数据

TCPport 139 (session services) 会话服务,保证传输的会话。(客户端向139提出TCP连接请求,之后基于这个连接进行文件共享的会话)

名称唯一

节点类型

B(广播)、P(点对点)、M(混合)、H(超级)

如何关闭这些端口呢?

在windows的网络连接里面 Internet协议版本4里面的属性中高级可以看到wins,直接禁用就会关闭了

检测

Nmap

扫描内网使用smb 或者samba 服务的主机

这个是一台没有打补丁的win7 主机

我们来看一下smb的脚本有哪些

首先来查询一下操作系统吧

可以看到清晰的识别出了是win7 旗舰版,比我们之前获取到的信息要详细得多

如果我们有账号和密码能够获取更加详细的信息

--script-args=smbuser=administrator,smbpass=123456

这些枚举信息的脚本我就不一个一个尝试了,一起来吧

漏洞检测

之前 nmap 有 smb-check-vulns 这个脚本,这个脚本会自动测试几个漏洞是否存在,不过后来被官方去掉了,换成了smb-vuln-conficker、smb-vuln-cve2009-3103、smb-vuln-ms06-025、smb-vuln-ms07-029、smb-vuln-regsvc-dos、smb-vuln-ms08-067等等几个脚本,我没有看官方的说明,也不知道为什么会这样,不过我猜测可能是因为漏洞之间会互相影响(比如如果先检测一个DoS类型的漏洞,可能直接主机就宕机了,导致其他的检测出现问题),当然只是我的猜测。

nmap -p139,445 192.168.1.108 –script=smb-vuln-*.nse--script-args=safe=1

safe=1 这个参数是保证扫描过程中不会导致主机宕机,从而影响正常使用

可以看到存在ms17-010 漏洞,危害等级高,RCE漏洞

还有很多脚本大家可以自行学习一下,当然可以同时使用所有的关于smb的脚本

nmap -p139,445 192.168.1.108 --script=smb-*.nse

当然这种方式是不推荐的,毕竟会产生大量的数据包

nbtscan

nbtscan -r 192.168.60.0/24

这个工具可以扫描不同的网段,就比如你在192.168.1.x,你可以扫描192.168.2.x

enum4linux

enum4linux –a –u administrator –p 123456192.168.60.108

不允许进行整个网段的扫描

【使用方法】

Linux SAMBA服务枚举

enum4linux1.1.1.1

Windows系统枚举

这个工具最开始设计时候比较早,主要是针对2000和xp进行设计的,所以对于win2003等做了一定默认安全配置的服务器其实并不能查询到信息,只有当我们已经有一个账号以后,根据账号密码进行查询

一下这些查询的参数需要放在前面,指定用户名密码和目标IP放在后面

-U 用户列表

-S 共享列表

-P 密码策略

-G 组账号

-d 详细信息

-u 指定用户

-p 指定用户密码

-a (-U -S -G -P -r -o -n -i)全都用上

-r 循环枚举RID

-R 自定义范围循环枚举RID -R 600-650

-l 通过TCP/389端口枚举域信息

-kuser 查询已知用户SID

-sfile 爆破共享名

-o 操作系统信息

5.02000

5.1xp

5.22003

-i 打印机信息

enum4linux -U -d -u administrator -p 123 192.168.2.1

关于SMB协议的扫描也就介绍这些,不过关于SMB的漏洞还有很多,由于SMB协议本身就有漏洞,没有打补丁的主机就可以直接获取shell,结合msf可以很简单的就完成。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-07-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 NOP Team 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
渗透测试中SMB服务(139、445端口)枚举汇总
# msfconsole -r /usr/share/metasploit-framwork/scripts/resource/smb_checks.rc"
字节脉搏实验室
2020/04/16
2.4K0
渗透测试中SMB服务漏洞检查checklist
来源: https://0xdf.gitlab.io/2018/12/02/pwk-notes-smb-enumeration-checklist-update1.html#list-shares 由于我上个月一直在使用PWK / OSCP,在这个过程中,我注意到渗透SMB服务是一件很棘手的事情,不同的工具在不同的主机上有的失败有的成功。通过参考NetSecFocus发布的一些内容,我整理了一份在渗透测试中扫描SMB服务漏洞的检查列表。我将在每个部分中包含示例,但在我使用PWK实验室的地方,我会按照规则对数据进行脱敏展示。
安恒网络空间安全讲武堂
2019/09/27
3.7K0
Windows系统安全|135、137、138、139和445端口
首先,这几个端口都是与文件共享和打印机共享有关的端口,而且在这几个端口上经常爆发很严重的漏洞。比如2017年危害全球的永恒之蓝,就是利用的445端口。
谢公子
2022/01/19
18.8K0
Nmap扫描神器超详细使用技巧笔记总结
为了绘制网络拓扑图,Nmap的发送特制的数据包到目标主机,然后对返回数据包进行分析。Nmap是一款枚举和测试网络的强大工具
网络安全自修室
2022/09/01
3.1K0
Nmap扫描神器超详细使用技巧笔记总结
内网信息搜集方法小结2
一篇可以参考:内网渗透之——权限维持(获取windows、linux密码,安装后门程序)
中龙技术
2022/09/29
7920
Enum4linux-ng:面向安全专业人士和CTF玩家的下一代Enum4linux
Enum4linux-ng是面向安全专业人士和CTF玩家的下一代Enum4linux(一款Windows/Samba枚举工具),并且具备了JSON/YAML导出等附加功能。
FB客服
2021/01/08
1.8K0
Enum4linux-ng:面向安全专业人士和CTF玩家的下一代Enum4linux
OSCP 考试操作笔记及参考资料
每个 OSCP 考生,都拥有 24 小时的时间(实际是 23 小时 45 分钟)去完成考试,具体如何分配时间由考生自己决定。题目是 5 台主机(随机抽取),目标是攻入并拿到最高权限(ROOT/SYSTEM)。基于难度级别,成功执行的攻击会获得相应的积分。
信安之路
2021/04/14
1.5K0
T1051: Shared Webroot
笔者查看 Mitre ATT&CK T1051时,发现该技术已被弃用,即该项技术已过时,没有在野使用的案例。
鸿鹄实验室
2021/04/15
9570
T1051: Shared Webroot
EternalBlue【永恒之蓝】漏洞详解(复现、演示、远程、后门、入侵、防御)内容丰富-深入剖析漏洞原理-漏洞成因-以及报错解决方法-值得收藏!
Meterpreter的功能丰富,例如添加用户、隐藏某些内容、打开shell、获取用户密码、上传和下载远程主机的文件、运行cmd.exe、捕捉屏幕、获取远程控制权、捕获按键信息、清除应用程序、显示远程主机的系统信息、显示远程机器的网络接口和IP地址等。此外,Meterpreter可以躲避入侵检测系统,在远程主机上隐藏自己,不改变系统硬盘中的文件,因此HIDS(基于主机的入侵检测系统)很难对它做出响应。
用户8909609
2023/12/27
16.9K0
EternalBlue【永恒之蓝】漏洞详解(复现、演示、远程、后门、入侵、防御)内容丰富-深入剖析漏洞原理-漏洞成因-以及报错解决方法-值得收藏!
nmap 详解版-指令使用方法大全【含安装】
nmap是一款端口扫描神器。目前官方提供了400多个扩展脚本,用于增强基础功能和扩展更多功能,如漏洞检测、口令爆破。
小黑同学
2020/08/17
1.8K0
nmap 详解版-指令使用方法大全【含安装】
Vulhub系列:EVM 1
This is super friendly box intended for Beginner's This may work better with VirtualBox than VMware
Ms08067安全实验室
2019/12/02
8730
永恒之蓝漏洞复现(MS17010)
永恒之蓝是指2017年4月14日晚,黑客团体Shadow Brokers(影子经纪人)公布一大批网络攻击工具,其中包含“永恒之蓝”工具,“永恒之蓝”利用Windows系统的SMB漏洞可以获取系统最高权限。5月12日,不法分子通过改造“永恒之蓝”制作了wannacry勒索病毒。恶意代码会扫描开放445文件共享端口的Windows机器,无需用户任何操作,只要开机上网,不法分子就能在电脑和服务器中植入勒索软件、远程控制木马、虚拟货币挖矿机等恶意程序。
全栈程序员站长
2022/08/15
1.1K0
永恒之蓝漏洞复现(MS17010)
Hack the box: Bastion
In conclusion, Bastion is not a medium box. But it would be easier to solve this box with windows VM. Command VM may be a good choice. But it can be finished by kali.
madneal
2019/11/28
1K0
内网信息收集
基本信息 # 网络信息 $ ipconfig /all # 查询网络配置信息 # 系统信息 $ systeminfo | findstr /B /C:"OS 名称" /C:"OS 版本" # 查询操作系统和软件信息 $ systeminfo # 查看补丁列表 $ wmic qfe get Caption,Description,HotFixID,InstallOn # 查看安装在系统的补丁 # 服务信息 $ wmic service list brief # 查询本机服务信息 $
Naraku
2021/07/29
8370
内网信息收集
Nmap多年积累实操经验分享
下载.jpg 全量端口基础方案简单梳理 21 FTP弱密码 22 SSH弱密码 23 telnet弱密码 25 邮件伪造,vrfy/expn查询邮件用户信息,可使用smtp-user-enum工具来自动跑 53 DNS溢出、远程代码执行、允许区域传送,dns劫持,缓存投毒,欺骗以及各种基于dns隧道的远控 69 尝试下载目标及其的各类重要配置文件 80 IIS6 RCE 80-89 应用服务器端口 110 POP3 可尝试爆破,嗅探 111 NFS 权限配置不当 137 SMB 143 IMAP 爆破 1
枪哥四海为家
2022/03/09
5.9K4
Nmap多年积累实操经验分享
Kali Linux 网络扫描秘籍 第五章 漏洞扫描
尽管可以通过查看服务指纹的结果,以及研究所识别的版本的相关漏洞来识别许多潜在漏洞,但这通常需要非常大量时间。 存在更多的精简备选方案,它们通常可以为你完成大部分这项工作。 这些备选方案包括使用自动化脚本和程序,可以通过扫描远程系统来识别漏洞。 未验证的漏洞扫描程序的原理是,向服务发送一系列不同的探针,来尝试获取表明漏洞存在的响应。 或者,经验证的漏洞扫描器会使用提供所安装的应用,运行的服务,文件系统和注册表内容信息的凭证,来直接查询远程系统。
ApacheCN_飞龙
2022/12/01
5.7K0
Kali Linux 网络扫描秘籍 第五章 漏洞扫描
Hack the Box – Resolute
大家好,今天给大家带来的CTF挑战靶机是来自hackthebox的“Resolute”,hackthebox是一个非常不错的在线实验平台,能帮助你提升渗透测试技能和黑盒测试技能,平台上有很多靶机,从易到难,各个级别的靶机都有。本级靶机难度为中等级别,任务是找到靶机上的user.txt和root.txt。
Khan安全团队
2020/03/10
2.4K0
Hack the Box – Resolute
HTB平台Resolute在线靶机通关实操过程
3.msfvenom工具的使用,进而接触到了veil,veil生成的exe文件360有概率不报毒
网络安全自修室
2021/11/25
2.1K0
HTB平台Resolute在线靶机通关实操过程
Nmap 常用基础命令
Nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端,确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统,正如大多数被用于网络安全的工具,Nmap也是不少黑客及骇客爱用的工具,系统管理员可以利用Nmap来探测工作环境中未经批准使用的服务器,但是黑客会利用Nmap来搜集目标电脑的网络设定,从而计划攻击的方法.
王瑞MVP
2022/12/28
8850
TryHackMe-Attacktive Directory
先用nmap扫一下发现开了DNS、IIS、Kerberos、RPC、netbios、Active Directory等服务
MssnHarvey
2022/12/30
8440
TryHackMe-Attacktive Directory
相关推荐
渗透测试中SMB服务(139、445端口)枚举汇总
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档