Skip to content

建议在 check net.ipv4.conf.all.route_localnet 补充对利用所需其他条件的检查 #83

@XDTG

Description

@XDTG

hi, @neargle 师傅,我在本地对 CVE-2020-8558 的复现中发现,如果在 pod 中要访问 host 上的 localhost tcp 服务,除了需要 pod 和 host 的 route_localnet 为 1 之外,还需要以下两个条件之一,来通过 pod 收到 host 回复包之后的源地址检查:

  1. pod 具有 CAP_NET_ADMIN,来修改 pod 中 127.0.0.1 的路由项

  2. /proc/sys/net/ipv4/conf/{all && interfaces}/rp_filter 均为 0(interfaces 不包含 lo),/proc/sys/net/ipv4/conf/{all || interface}/accept_local 为 1

在 Evaluate 功能中的 check net.ipv4.conf.all.route_localnet 可以添加上述两个条件的判断,可以进一步判断是否可以利用。

如果需要我可以晚些时间提交 pr

条件 1 参考的 issue
rp_filter, accept_local 的解释
其他人复现文章

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions