前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Exchange2010接收发送连接器的安全权限

Exchange2010接收发送连接器的安全权限

作者头像
孤鸿
发布于 2022-09-23 08:56:56
发布于 2022-09-23 08:56:56
53500
代码可运行
举报
文章被收录于专栏:孤鸿孤鸿
运行总次数:0
代码可运行

应boss要求,需要关掉邮箱服务器的匿名登录发邮件的权限,下面共享一下该问题的深入知识。

下面我们来查看匿名用户的权限

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[PS] C:\Get-ReceiveConnector mailserver\D* | Get-ADPermission | where {$_.user -like "*anon*"} | ft identity,user,deny,extendedrighsts –autosize

你会发现,匿名用户是没有验证用户的smtp提交权限的。 下面我们来看看接收器上针对用户的几个权限(也就是extenderights):

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Permission    Display name
ms-Exch-SMTP-Submit    Submit Messages to Server
ms-Exch-SMTP-Accept-Any-Recipient    Submit Messages to any Recipient
ms-Exch-SMTP-Accept-Any-Sender    Accept any Sender
ms-Exch-SMTP-Accept-Authoritative-DomainSender    Accept Authoritative Domain Sender
ms-Exch-SMTP-Accept-Authentication-Flag    Accept Authentication Flag
ms-Exch-Accept-Headers-Routing    Accept Routing Headers
ms-Exch-Accept-Headers-Organization    Accept Organization Headers
ms-Exch-Accept-Headers-Forest    Accept Forest Headers
ms-Exch-SMTP-Accept-Exch50    Accept Exch50
ms-Exch-SMTP-Send-Exch50    Send Exch50
ms-Exch-Send-Headers-Routing    Send Routing Headers
ms-Exch-Send-Headers-Organization    Send Organization Headers
ms-Exch-Send-Headers-Forest    Send Forest Headers
ms-Exch-Bypass-Message-Size-Limit    Bypass Message Size Limit
ms-Exch-Bypass-Anti-Spam    Bypass Anti-Spam

参数解释

ms-Exch-SMTP-Submit

如果smtp接收线程没有该权限,线程是无法通过该连接器提交邮件的。使用“mail from”;”auth”命令都会失败。这也意味着你的exchangeserver无法通过该连接器拿到发给该域内的邮件。 为匿名添加该权限:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Get-ReceiveConnector mailserver\\D\* | Add-ADPermission –user “nt authority\\anonymous logon” –extendedrights ms-exch-smtp-submit

再次测试,此时报的是另外一个错误,是正常的

ms-Exch-SMTP-Accept-Any-Sender

上面的错误是因为匿名登陆没有ms-Exch-SMTP-Accept-Any-Sender permission。如果smtp接收线程没有该权限,服务器将会检查发信人地址仿冒。 为匿名添加该权限:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Get-ReceiveConnector mailserver\D* | Add-ADPermission –user “nt authority\anonymous logon” –extendedrights ms-exch-smtp-accept-any-sender

再次测试,ok了

在上面的测试中,我突然想使用另外一个账户名来发送邮件,但是如你看到的,我失败了。可是匿名用户不是拥有可以使用任意域名的权限么?为什么?原 来,Exchange Receive Connectors有2个不同的权限针对mail from 判断使用可以允许的域名。这些域名有2大类:

权威域和internal relay
extenal relay或者没有定义

如何查看exchange organization中哪些域名是被设置为权威域? 使用 get-acceptedDoamin

你可以看到 “bb.dmn” 是一个权威域;这也就是为何无法使用该域名发信的原因。如果要让receive connector接受这种类型的发送者SMTP线程,则必须添加ms-Exch-SMTP-Accept-Authoritative-Domain-Sender 权限

ms-Exch-SMTP-Accept-Authoritative-Domain-Sender 如果smtp接收线程没有该权限,服务器会拒绝“mailfrom”中使用了权威域名的邮件。 为匿名账户添加该权限

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Get-ReceiveConnector mailserver\D* | Add-ADPermission –user “nt authority\anonymous logon” –extendedrights ms-Exch-SMTP-Accept-Authoritative-Domain-Sender

再次测试,没有问题了吧!

看起来是没有问题了。SMTP 线程可以接受任意的mailfrom地址;发送者也可以使用任意域名,而且还能使用权威域名。SMTP线程也接受收件人是权威域内的用户,但拒绝投递邮件 给外部。这确保了邮件系统是安全的,不会被外部用户relay. So what permission is missing from SMTP session so that we couldn’t relay message to outside. Check out the next one please!!

ms-Exch-SMTP-Accept-Any-Recipient

这是一个重要的权限,你也可以称之为relay权限。因为一个拥有该权限的smtp接收线程可以投递邮件给组织外。如果你有一个面向公网的接受连接器而且为匿名用户添加了该权限,那此时你的邮件系统就是一个 OPEN-RELAY server!!

作为测试的目的,我们这里为匿名用户添加该权限。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Get-ReceiveConnector mailserver\D* | Add-ADPermission –user “nt authority\anonymous logon” –extendedrights ms-Exch-SMTP-Accept-Any-Recipient

此时再来做测试:

这就是一个open relay smtp server了。别怪我没有提醒你!如果你这么干了,后果自负!

ms-Exch-SMTP-Accept-Authentication-Flag

如果smtp接收线程没有该权限,服务器将会忽略auth验证的部分。在内网中,exchangeservers传送匿名邮件会使用“auth=<>”。

这个权限允许早前版本的exchange服务器以内部发送者的名义提交邮件。Ex07 会将这些邮件识别为内部邮件。(exchange07的邮件全部有hub来投递,所以比如ex03就不能归属于exchange07 的组织中。)

ms-Exch-Accept-Headers-Routing

如果smtp接收线程没有该权限,服务器会删掉所有“received:”的行

如果你查看入站邮件头,你可以看到邮件从发送者到收信者所经过的邮件服务器信息。下面是在outlook中使用Message Options 查看的例子。当邮件从SMTP server传递给下一个server,每个接受server都会在mail中添加一个签名(以Received:开头)。如果一个邮件在组织内经过了3 个smtp服务器,那这封邮件的接受者就能知道你组织的内网中3台mialserver的ip地址。是不是觉得很不安全呢?

要避免该问题,你只需要简单的在发送接收器上拒绝匿名用户的这项权利。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
get- sendconnector “D*| add-adpermission –user “nt authority\anonymous logon” –extendedrights ms-Exch-Accept-Headers-Routing
Get-SendConnector "d*"| Get-ADPermission -user "nt authority\anonymous logon" | ft deny,isinherited,extendedrights -autosize

ms-Exch-Accept-Headers-Organization

如果smtp接收线程没有该权限,服务器会删掉所有“X-MS-Exchange-Organization-”的行

ms-Exch-Accept-Headers-Forest

如果smtp接收线程没有该权限,服务器会删掉所有“X-MS-Exchange-Forest-”的行

ms-Exch-SMTP-Accept-Exch50

这个权限允许线程提交包含XEXCH50命令的邮件。当于Exchange 2000 Server 和 Exchange 2003协同工作的时候会用到XEXCH50命令。而在exchange07only的状态下,该权限应该被disabled。

ms-Exch-Send-Headers-Routing

如果smtp发送线程没有该权限,服务器会删掉所有“received:”的行。

ms-Exch-Send-Headers-Organization

如果smtp发送线程没有该权限,服务器会删掉所有“X-MS-Exchange-Organization-”的行

ms-Exch-Send-Headers-Forest

如果smtp发送线程没有该权限,服务器会删掉所有“X-MS-Exchange-Forest-”的行

ms-Exch-Bypass-Message-Size-Limit

如果SMTP接收线程拥有该权限,服务器将在协议级别跳过邮件大小限制。

ms-Exch-Bypass-Anti-Spam

如果SMTP接收线程拥有该权限,服务器将跳过该邮件的anti-spampass检查。

PS:除了可以通过powershell更改以上权限外,还可以在域控上通过ADSI工具修改,在后面的文章里面描述。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

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

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Python监控体检预约网站的余额并在可预约时发送提醒邮件
  本文介绍基于Python语言,自动、定时监测某体检预约网站中指定日期的体检余额,并在有体检余额时自动给自己发送邮件提醒的方法。
疯狂学习GIS
2024/06/04
1120
Python监控体检预约网站的余额并在可预约时发送提醒邮件
Python自动化运维1
psutil是一个跨平台库,用于检索Python中运行的进程和系统利用率(CPU、内存、磁盘、网络、传感器)的信息。支持平台:
全栈工程师修炼指南
2020/10/23
1.8K0
Python自动化运维1
异步IO\数据库\队列\缓存
到目前为止,我们已经学了网络并发编程的2个套路, 多进程,多线程,这哥俩的优势和劣势都非常的明显,我们一起来回顾下
hankleo
2020/09/17
4.3K0
异步IO\数据库\队列\缓存
吐血整理所有常用端口,不全你来打我!
作者:ADreamClusive 来源: http://blog.csdn.net/u013943420/article/details/65938696 大家在学习计算机的时候,对于最常用的几个端口比如80端口肯定有很深的印象,但是对于其他一些不是那么常用的端口可能就没那么了解。所以,在一些使用频率相对较高的端口上,很容易会引发一些由于陌生而出现的错误,或者被黑客利用某些端口进行入侵。对于这件事情,大部分人都很头疼——最多可达65535个的端口,让人怎么记? 别怕,小编专门给大家整理了一些比较常见端口
小小科
2018/05/04
5.9K0
吐血整理所有常用端口,不全你来打我!
TCP/IP 协议:网络世界的基石(2/10)
在当今数字化时代,互联网已经成为人们生活中不可或缺的一部分。而在互联网的背后,TCP/IP 协议扮演着至关重要的角色,堪称互联网的基石。
正在走向自律
2024/12/18
3670
TCP/IP 协议:网络世界的基石(2/10)
C#进阶-实现邮箱收发功能
在C#中,发送邮件是一项常见的任务,通常用于实现自动化通知、报警和与用户进行交互等场景。C#提供了多种发送邮件的方式,主要方式包括SMTP协议、POP3协议、IMAP协议、Exchange服务器等。使用这些方式,开发人员可以灵活地发送和接收邮件,满足各种应用场景的需求。
Damon小智
2024/03/20
3150
C#进阶-实现邮箱收发功能
Windows Server 2008 R2 配置Exchange 2010邮件服务器并使用EWS发送邮件
配置环境 配置环境完全在此前一篇文章搭建好的环境下进行配置: http://www.cnblogs.com/zhongweiv/archive/2013/01/04/win2008_addomain_configuration.html Windows版本:Windows Server 2008 R2 Enterprise                      Service Pack 1 系统类型:       64 位操作系统 所在域:          adserv.com E
Porschev
2018/03/28
2.5K0
常见邮件发送失败原因分析以及解决方法是_手机邮箱发送失败
我发到 sina 的邮件会被退回,并提示remote server said: 553 Spam Mail http://mail.sina.com.cn/FAQ.html;错误,怎么办?
全栈程序员站长
2022/11/10
5.1K0
常见邮件发送失败原因分析以及解决方法是_手机邮箱发送失败
Python 其他通用代码总结
封装钉钉通知接口: 接口的调用需要传入需要通知特定人的手机号,调用后会在顶顶群内通知.
微软技术分享
2022/12/28
6330
技术讨论之Exchange后渗透分析
上回我们说到,通过ruler可以给已知用户名、口令的用户增加规则,从而在使用Outlook连接Exchange邮箱服务器的主机上做到任意代码执行。那么问题来了,如果不知道该用户的口令,能否控制他们的主机呢?
FB客服
2020/06/29
1.9K0
技术讨论之Exchange后渗透分析
邮件发送功能开发
作为一名.Net开发,"邮件发送"功能的开发和使用是必须要掌握的,因为这个功能作为“消息推送”的一种手段经常出现在各种.Net系统中,所以本文将对.Net平台下的“邮件发送”,做一个细致的分析! 一、who需要邮件功能 1、服务提供方:需提供邮件收发客户端或Web服务。如:QQ邮箱、GMail邮箱、126、163等知名邮件服务提供商。注:如果你使用的第三方不知名邮件服务商提供的邮件收发服务,通过其发出的邮件,可能会被其他知名邮件服务提供商的STMP服务器视为是"恶意邮件或垃圾邮件"! 2、消息推送:消息推送
郑小超.
2018/01/26
4K0
网藤能力中心 | 深入Exchange Server在网络渗透下的利用方法
在渗透测试中,往往会遇到企业内网环境中使用的一些常用组件,这些组件对内或对外提供了服务与接口,也给渗透测试人员与黑客提供了新的可尝试的攻击面,合理的利用组件服务提供的功能和接口,可以帮助渗透测试人员完成信息收集、环境侦测,甚至通过其漏洞弱点、配置缺陷、功能滥用直接拿下权限,在渗透测试与后渗透阶段达到事半功倍的效果。 Windows Exchange Server,应该是国内外应用都非常广泛的邮件服务器了,本文将围绕Exchange展开,介绍在渗透测试中对Exchange服务器的攻击利用。
FB客服
2018/12/28
4.4K0
根据红帽RHEL7官方文档对centos7进行技术剖析(三)
第一章:高级网络配置 1.虚拟网卡的添加 ifconfig eth0:1 10.0.0.2 netmask 255.255.255.0 临时添加虚拟网卡 永久保存虚拟网卡,必须在配置文件中写ifcfg-eth0/1 //注意:NetworkManager 是不支持桥接和虚拟接口。但是在centos7中NetworkManager工具完美的兼容了/etc/sysconfig/network-scripts/下的网络配置文件,并且支持了bond和桥接网络。 2.网络接口的配置-bonding 使用bonding
BGBiao
2018/02/26
1.9K0
SpringBoot整合RabbitMQ 实现五种消息模型 详细教程
今天说下了消息队列中间件,各种队列性能对比,RabbitMQ队列,交换机(Exchange)以及消息 中间件的应用场景,然后带着大家一起实现RabbitMQ的五种消息模型。
全栈程序员站长
2022/08/28
1.2K0
SpringBoot整合RabbitMQ 实现五种消息模型 详细教程
SpringBoot 发送邮件和附件(实用版)
转载自简书 SpringBoot 发送邮件和附件(实用版)作者:yizhiwazi
Java团长
2019/11/11
2K0
SpringBoot 发送邮件和附件(实用版)
总结几个常用的系统安全设置(含DenyHosts)
1)禁止系统响应任何从外部/内部来的ping请求攻击者一般首先通过ping命令检测此主机或者IP是否处于活动状态 如果能够ping通 某个主机或者IP,那么攻击者就认为此系统处于活动状态,继而进行攻击或破坏。如果没有人能ping通机器并收到响应,那么就可以大大增强服务器的安全性, linux下可以执行如下设置,禁止ping请求: [root@localhost ~]# echo "1"> /proc/sys/net/ipv4/icmp_echo_ignore_all
洗尽了浮华
2022/03/29
3K0
总结几个常用的系统安全设置(含DenyHosts)
Python自动化运维1
psutil是一个跨平台库,用于检索Python中运行的进程和系统利用率(CPU、内存、磁盘、网络、传感器)的信息。支持平台:
全栈工程师修炼指南
2022/09/28
2.6K0
Python自动化运维1
在CentOS 6上使用Postfix,Dovecot和MySQL发送电子邮件
Postfix 邮件传输代理(MTA)是一种高性能的开源电子邮件服务器系统。本指南将帮助你在CentOS 6 Linode上运行 Postfix,使用 Dovecot 运行 IMAP / POP3 服务,使用 MySQL 存储有关虚拟域名和用户的信息。
FesonX
2018/08/31
2.6K0
如何在 CentOS 8 服务器上安装 ISP Config 3.2?
本教程将介绍在 CentOS 8(64 位)服务器上安装 ISPConfig 3.2。ISPConfig 是一个网络托管控制面板,允许您通过网络浏览器配置以下服务:Apache 网络服务器、PHP、Postfix 邮件服务器、MySQL、BIND 名称服务器、PureFTPd、SpamAssassin、ClamAV、Mailman 等等。
网络技术联盟站
2021/12/17
2.6K0
如何在 CentOS 8 服务器上安装 ISP Config 3.2?
架设邮件服务器-windows 2003 POP3服务,SMTP服务收发邮件「建议收藏」
1.默认安装的系统是没有安装POP3组件,SMTP组件,搞个盘过来,或从网上下载一个i386(下载地址:http://down.spdns.com/i386.rar ).
全栈程序员站长
2022/07/22
6.2K0
架设邮件服务器-windows 2003 POP3服务,SMTP服务收发邮件「建议收藏」
推荐阅读
相关推荐
Python监控体检预约网站的余额并在可预约时发送提醒邮件
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文