我刚刚更新到最新的MacOS 10.13.2,重新启动后,我的机器要求我允许传入的网络连接为"rapportd"。
在阻止它并在防火墙配置中检查后,我可以看到这是/usr/libexec/rapportd
中的一个可执行文件,它是12月1日在我的机器上创建的。
那是在我安装安全更新2017-001(第二次;自动更新似乎没有注意到我已经手动更新)后的一天,而且我最近/在那段时间没有安装或更新任何其他软件。谷歌浏览器随时更新,所以这可能与谷歌浏览器的更新有关(不知道它最后一次更新是什么时候)。
互联网表明这与一些银行保护程序有关,但这似乎不适合这里,从对二进制文件的模糊文本编辑检查中,我可以看到它引用了/System/Library/PrivateFrameworks/Rapport.framework/Versions/A/Rapport
(7月在我的机器上创建的框架,10月更新),这使我认为这可能是一个新的第一方操作系统守护程序。
rapportd是做什么的?
EDIT: 看起来人的页面已经更新了,现在是这样的。
启用电话转接和其他苹果设备间通信功能的守护神。
我刚才也有同样的经历。手册上说,它是一个。
为Rapport连接框架提供支持的守护神。
用 "codesign -dv --verbose=4 /usr/libexec/rapportd "检查代码签名,显示它是由苹果公司签署的,而且,由于它是针对PrivateFramework(苹果公司不允许其他人这样做)链接的,而且是在受SIP保护的位置(除非你关闭SIP),这似乎是合法的苹果软件。手册中暗示它与通信有关,尽管我还没有找到任何关于它的真正文件。
(感谢John Keates提供的代码签名提示)。
除了已经发布的内容之外,/usr/libexec/rapportd是由苹果公司签署的代码,并针对PrivateFramework(苹果公司不允许其他人使用,因此也不为其他人签署)进行链接,并且在SIP保护的位置。除非你关闭SIP,否则这只是操作系统的一部分,由苹果放在那里。
你可以在命令行上检查这个。
codesign -vvvv -R="anchor apple" /usr/libexec/rapportd
这应该报告类似的内容。
/usr/libexec/rapportd: valid on disk
/usr/libexec/rapportd: satisfies its Designated Requirement
/usr/libexec/rapportd: explicit requirement satisfied
要显示链接的库是什么。
otool -L /usr/libexec/rapportd
这将显示类似的内容。
/usr/libexec/rapportd:
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 1450.14.0)
/System/Library/PrivateFrameworks/CoreUtils.framework/Versions/A/CoreUtils (compatibility version 1.0.0, current version 1.0.0)
/System/Library/PrivateFrameworks/Rapport.framework/Versions/A/Rapport (compatibility version 0.0.0, current version 0.0.0)
/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 1450.14.0)
/usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1252.0.0)
(编辑:我纠正了我之前对UID和PID的混淆--向大家道歉!!)
我检查了这个进程所打开的文件,这也没有什么帮助。不过,至少我现在知道了它试图监听的端口(49161),而且我可以搜索希望这个端口是为什么而保留的(这是一个高级端口,所以它并没有真正保留,是的,我知道)。
[username]mbp:~ root# ps -ef |grep -i [r]apport
501 306 1 0 10:52AM ?? 0:00.11 /usr/libexec/rapportd
[username]mbp:~ root# lsof -p 306
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
rapportd 306 [username] cwd DIR 1,4 992 2 /
rapportd 306 [username] txt REG 1,4 44768 8591706461 /usr/libexec/rapportd
rapportd 306 [username] txt REG 1,4 837248 8591705719 /usr/lib/dyld
rapportd 306 [username] txt REG 1,4 1155805184 8591716537 /private/var/db/dyld/dyld_shared_cache_x86_64h
rapportd 306 [username] 0r CHR 3,2 0t0 308 /dev/null
rapportd 306 [username] 1u CHR 3,2 0t0 308 /dev/null
rapportd 306 [username] 2u CHR 3,2 0t0 308 /dev/null
rapportd 306 [username] 3u IPv4 0x571b821607c38e93 0t0 TCP *:49161 (LISTEN)
rapportd 306 [username] 4u IPv6 0x571b82160763854b 0t0 TCP *:49161 (LISTEN)
rapportd 306 [username] 5u unix 0x571b821607941573 0t0 ->0x571b821607941c7b
rapportd 306 [username] 6u unix 0x571b82160794069b 0t0 ->0x571b82160794050b