已关闭
[Bug]: 【等级:一般】【分类:工程】【三方库版本 2.0.23】【组件 libcoap】【属性 messageHandler session remoteIp 日志】明文打印远端 IP 存在隐私风险 #112
程皖Orz创建于 9月3日关闭于 9月15日
9月3日 添加了label:bugtriage
9月3日 关联了pull request:修复session remoteIp日志明文打印IP的隐私风险
cpf-thirdparty-manager
9月4日 评论:
9月4日 评论:
本Issue主要用于开发协作,欢迎在此反馈问题或提出建议


9月15日 关闭了 issue
感谢对三方库社区的支持与关注,欢迎反馈缺陷。
发生了什么问题?
libcoap 模块 messageHandler 会话处理日志(
libcoap/src/main/cpp/coap-client.cpp的GetRemoteInfo,LOGI"MessageHandler session remoteIp: %s")将远端 IP 明文打印到 hilog 系统日志,例如:远端 IP 属于敏感信息(可用于定位设备与用户网络位置、还原网络拓扑)。hilog 日志可能被采集、上传或长期保留,明文 IP 进入日志存在隐私泄露风险,不满足日志脱敏规范要求。
期望行为是什么?
日志中对远端 IP 做掩码脱敏输出:保留 IP 首末两段、中间两段掩码为
xxx,如127.0.0.1→127.xxx.xxx.1、192.168.1.100→192.xxx.xxx.100。在保留排障所需信息(首段网络类别 + 末段主机标识)的同时避免完整 IP 泄露。会话处理逻辑与 JS 层回调收到的真实远端 IP 不受影响(脱敏仅作用于日志出口)。如何复现该缺陷?
【预置条件】
【测试步骤】
coap://127.0.0.1/test,COAP_MESSAGE_CON)hilog | grep libcoap查看 libcoap 日志【实际结果】日志输出
MessageHandler session remoteIp: 127.0.0.1(明文 IP)【预期结果】日志输出
MessageHandler session remoteIp: 127.xxx.xxx.1(脱敏 IP)三方库版本。
"@ohos/coap": "2.0.23"(libcoap/oh-package.json5,master 分支 d5475384)
涉及编译环境信息,请补充。
无(该问题与编译环境无关:任何环境下 messageHandler session remoteIp 日志均明文打印远端 IP,OpenHarmony API 12 上实测复现)。
堆栈跟踪或日志
修复前(明文):
修复后(脱敏):
其他补充信息
修复方案:新增
Tools::MaskIpv4掩码工具函数(保留 IPv4 首末两段、中间两段替换为xxx,非法/非 IPv4 输入原样返回),messageHandler session remoteIp 日志改经该函数脱敏输出;仅改变日志打印内容,不改变会话处理与 JS 回调链路行为。提交前检查清单
修改点
Tools::MaskIpv4掩码函数声明(含掩码规则注释)Tools::MaskIpv4实现:解析 IPv4 四段,保留首末段、中间两段掩码为 xxx;非法/非 IPv4 输入原样返回Tools::MaskIpv4(client->remoteIp).c_str()脱敏输出