# Kafka

LLMS index: [llms.txt](/wikis/llms.txt)

---

适用范围：Apache Kafka 2.x/3.x、KRaft 或 ZooKeeper 架构场景。

不适用标识说明：

- 使用 `【不适用】` 明确标记现场可判定为不适用的控制点。
- 判定依据采用 GB/T 28448-2019“按测评对象实际处理流程和安全边界判定”的原则；Kafka 多为消息中间件，很多个人信息保护项需先确认消息内容和平台功能边界。

## 基础信息

**核查命令**：

```bash
ps -ef | grep kafka
grep -n "broker.id\\|node.id\\|listeners" config/server.properties 2>/dev/null
bin/kafka-topics.sh --version 2>/dev/null
```

- 备注：确认版本、Broker 角色、集群模式、监听地址、日志目录、数据目录和配置文件路径。
- 预期证据：版本截图、进程截图、配置文件截图、集群节点截图。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">ps -ef <span class="p">|</span> grep kafka
</span></span><span class="line"><span class="cl">kafka <span class="m">2201</span> java -Xmx4G -server kafka.Kafka config/server.properties
</span></span><span class="line"><span class="cl">config/server.properties:
</span></span><span class="line"><span class="cl">broker.id<span class="o">=</span><span class="m">1</span>
</span></span><span class="line"><span class="cl"><span class="nv">listeners</span><span class="o">=</span>SASL_SSL://192.168.10.21:9093
</span></span><span class="line"><span class="cl">bin/kafka-topics.sh --version
</span></span><span class="line"><span class="cl">2.8.1 <span class="o">(</span>Commit:839b886f9b732b15<span class="o">)</span>
</span></span></code></pre></div>
</details>



## 身份鉴别

### A. 管理与客户端认证方式

**核查命令**：

```bash
grep -n "security.inter.broker.protocol\\|sasl.enabled.mechanisms\\|listeners\\|listener.security.protocol.map" config/server.properties 2>/dev/null
```

- 备注：核查是否启用 SASL、SSL、双向证书、Kerberos 等身份鉴别机制。
- 预期证据：认证配置截图、证书或 JAAS 配置截图。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">security.inter.broker.protocol<span class="o">=</span>SASL_SSL
</span></span><span class="line"><span class="cl">sasl.enabled.mechanisms<span class="o">=</span>SCRAM-SHA-256
</span></span><span class="line"><span class="cl">listener.security.protocol.map<span class="o">=</span>SASL_SSL:SASL_SSL,PLAINTEXT:PLAINTEXT
</span></span></code></pre></div>
</details>



### B. 用户与主体

**核查命令**：

```bash
grep -R "KafkaServer\\|Client" config *.jaas 2>/dev/null
```

- 备注：如接入 LDAP、Kerberos、SCRAM，应结合主体、用户、服务账号统一核查。
- 预期证据：JAAS 配置截图、账号台账、访谈记录。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">config/kafka_server_jaas.conf:
</span></span><span class="line"><span class="cl">KafkaServer <span class="o">{</span>
</span></span><span class="line"><span class="cl">    org.apache.kafka.common.security.scram.ScramLoginModule required
</span></span><span class="line"><span class="cl">    <span class="nv">username</span><span class="o">=</span><span class="s2">&#34;admin&#34;</span>
</span></span><span class="line"><span class="cl">    <span class="nv">password</span><span class="o">=</span><span class="s2">&#34;***&#34;</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"><span class="o">}</span><span class="p">;</span>
</span></span></code></pre></div>
</details>



### C. 口令与失败处理

**核查命令**：

```bash
grep -R "SCRAM\\|PLAIN\\|OAUTH" config 2>/dev/null
```

- 备注：Kafka 对登录失败锁定能力有限，通常通过认证平台、前置网关或主机控制实现等效措施。
- 【不适用】若 Kafka 未提供面向人工用户的交互式登录控制台，仅作为 Broker 接收客户端连接，则“人工用户登录失败锁定/会话超时”可判定为不适用；应转而核查 SASL、SSL、ACL 与网络控制。依据：GB/T 28448-2019 身份鉴别控制点按实际鉴别场景适用。
- 预期证据：认证方案说明、制度、平台材料。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">grep SCRAM/PLAIN/OAUTH conf
</span></span><span class="line"><span class="cl">sasl.enabled.mechanisms<span class="o">=</span>SCRAM-SHA-256
</span></span><span class="line"><span class="cl">（采用 SCRAM-SHA-256，未启用弱 PLAIN 机制对外）
</span></span></code></pre></div>
</details>



### D. 运维会话与远程管理

**核查命令**：

```bash
grep -n "authorizer.class.name\\|super.users" config/server.properties 2>/dev/null
```

- 备注：重点关注运维是经 JumpServer、Ansible、发布平台还是直接登录主机操作。
- 预期证据：运维平台截图、堡垒机记录、制度。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">authorizer.class.name<span class="o">=</span>kafka.security.authorizer.AclAuthorizer
</span></span><span class="line"><span class="cl">super.users<span class="o">=</span>User:admin
</span></span><span class="line"><span class="cl">allow.everyone.if.no.acl.found<span class="o">=</span><span class="nb">false</span>
</span></span></code></pre></div>
</details>



## 访问控制

### A. ACL 与授权

**核查命令**：

```bash
bin/kafka-acls.sh --bootstrap-server <地址> --list 2>/dev/null
```

- 备注：应区分 Topic、Consumer Group、Cluster 等对象的授权，避免全部放开。
- 预期证据：ACL 列表截图、权限说明。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">bin/kafka-acls.sh --bootstrap-server 192.168.10.21:9093 --list（节选）
</span></span><span class="line"><span class="cl">Current ACLs <span class="k">for</span> resource <span class="sb">`</span>Topic:demo-order<span class="sb">`</span>:
</span></span><span class="line"><span class="cl">  <span class="nv">principal</span><span class="o">=</span>User:demo-producer, <span class="nv">operation</span><span class="o">=</span>WRITE
</span></span><span class="line"><span class="cl">  <span class="nv">principal</span><span class="o">=</span>User:demo-consumer, <span class="nv">operation</span><span class="o">=</span>READ, <span class="nv">host</span><span class="o">=</span>*
</span></span></code></pre></div>
</details>



### B. 监听与来源限制

**核查命令**：

```bash
grep -n "listeners\\|advertised.listeners" config/server.properties 2>/dev/null
```

- 备注：管理平面和业务平面应分离，敏感监听不宜对无关网络开放。
- 预期证据：监听配置截图、网络 ACL 材料。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="nv">listeners</span><span class="o">=</span>SASL_SSL://192.168.10.21:9093
</span></span><span class="line"><span class="cl">advertised.listeners<span class="o">=</span>SASL_SSL://mq.demo.local:9093
</span></span><span class="line"><span class="cl">（仅开放 SASL_SSL 端口，PLAINTEXT <span class="m">9092</span> 未监听）
</span></span></code></pre></div>
</details>



### C. 默认账户与测试主题

**核查命令**：

```bash
bin/kafka-topics.sh --bootstrap-server <地址> --list 2>/dev/null
```

- 备注：测试主题、临时主题、无主业务对象应清理或纳入说明。
- 预期证据：主题清单截图、处置说明。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">demo-order
</span></span><span class="line"><span class="cl">demo-payment
</span></span><span class="line"><span class="cl">demo-log-collect
</span></span><span class="line"><span class="cl">__consumer_offsets
</span></span><span class="line"><span class="cl">__transaction_state
</span></span></code></pre></div>
</details>



### D. 文件与进程权限

**核查命令**：

```bash
ps -o user,pid,cmd -C java
ls -l config/server.properties 2>/dev/null
```

- 备注：运行账户不宜过高，配置和日志目录权限应最小化。
- 预期证据：运行用户截图、权限截图。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">USER PID  COMMAND
</span></span><span class="line"><span class="cl">kafka <span class="m">2201</span> java -Xmx4G kafka.Kafka
</span></span><span class="line"><span class="cl">-rw-r----- <span class="m">1</span> kafka kafka <span class="m">5678</span> config/server.properties
</span></span></code></pre></div>
</details>



## 安全审计

### A. Broker 日志

**核查命令**：

```bash
grep -n "log.dirs\\|authorizer.class.name" config/server.properties 2>/dev/null
find logs -type f 2>/dev/null | head
```

- 备注：区分 Broker 日志、控制器日志、授权日志和客户端接入日志。
- 预期证据：日志目录截图、日志样例。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">log.dirs<span class="o">=</span>/data/kafka/logs
</span></span><span class="line"><span class="cl">authorizer.class.name<span class="o">=</span>kafka.security.authorizer.AclAuthorizer
</span></span><span class="line"><span class="cl">find logs：
</span></span><span class="line"><span class="cl">server.log
</span></span><span class="line"><span class="cl">controller.log
</span></span><span class="line"><span class="cl">state-change.log
</span></span></code></pre></div>
</details>



### B. 认证与授权审计

**核查命令**：

```bash
grep -R "authorizer" config 2>/dev/null
```

- 备注：应能追踪失败认证、拒绝授权和关键管理操作。
- 预期证据：审计截图、日志平台材料。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">grep authorizer config
</span></span><span class="line"><span class="cl">authorizer.class.name<span class="o">=</span>kafka.security.authorizer.AclAuthorizer
</span></span><span class="line"><span class="cl">allow.everyone.if.no.acl.found<span class="o">=</span><span class="nb">false</span>
</span></span><span class="line"><span class="cl">（未授权主体默认拒绝；broker 级操作日志由 server.log 记录）
</span></span></code></pre></div>
</details>



### C. 留存与轮转

**核查命令**：

```bash
grep -R "log4j" config 2>/dev/null
```

- 备注：日志留存与轮转通常由 Log4j 或系统侧实现，现场需明确留存周期。
- 预期证据：轮转配置截图、制度、访谈记录。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">config/log4j.properties:
</span></span><span class="line"><span class="cl">log4j.appender.kafkaAppender<span class="o">=</span>org.apache.log4j.DailyRollingFileAppender
</span></span><span class="line"><span class="cl">log4j.appender.stateChangeAppender<span class="o">=</span>DailyRollingFileAppender
</span></span><span class="line"><span class="cl">（按日轮转，配合外部清理脚本保留 <span class="m">30</span> 天）
</span></span></code></pre></div>
</details>



### D. 集中审计

**核查命令**：

```bash
journalctl | grep kafka | tail -n 50
```

- 备注：Kafka 现场建议结合主机日志、日志平台和集群监控平台综合取证。
- 预期证据：平台截图、告警截图。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">journalctl <span class="p">|</span> grep kafka（节选）
</span></span><span class="line"><span class="cl">Aug <span class="m">24</span> 08:59:59 host systemd<span class="o">[</span>1<span class="o">]</span>: Started kafka.service
</span></span><span class="line"><span class="cl">Aug <span class="m">24</span> 09:00:03 host kafka<span class="o">[</span>2201<span class="o">]</span>: <span class="o">[</span>KafkaServer <span class="nv">id</span><span class="o">=</span>1<span class="o">]</span> started <span class="o">(</span>kafka.server.KafkaServer<span class="o">)</span>
</span></span><span class="line"><span class="cl">Aug <span class="m">24</span> 10:14:20 host kafka<span class="o">[</span>2201<span class="o">]</span>: <span class="o">[</span>SocketServer<span class="o">]</span> Failed authentication with /192.168.8.66 <span class="o">(</span>Sasl authentication error<span class="o">)</span>
</span></span></code></pre></div>
</details>



## 数据完整性

### A. 副本与同步状态

**核查命令**：

```bash
bin/kafka-topics.sh --bootstrap-server <地址> --describe 2>/dev/null
```

- 备注：关注副本因子、ISR、未同步副本和控制器状态。
- 预期证据：主题描述截图、集群状态截图。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">bin/kafka-topics.sh --describe（节选）
</span></span><span class="line"><span class="cl">Topic: demo-order  PartitionCount: <span class="m">6</span>  ReplicationFactor: <span class="m">3</span>
</span></span><span class="line"><span class="cl">    Topic: demo-order Partition: <span class="m">0</span> Leader: <span class="m">1</span> Replicas: 1,2,3 Isr: 1,2,3
</span></span><span class="line"><span class="cl">    Topic: demo-order Partition: <span class="m">1</span> Leader: <span class="m">2</span> Replicas: 2,3,1 Isr: 2,3,1
</span></span><span class="line"><span class="cl">（多副本且 ISR 完整，保障消息完整性）
</span></span></code></pre></div>
</details>



### B. 传输完整性

**核查命令**：

```bash
grep -n "ssl\\|sasl" config/server.properties 2>/dev/null
```

- 备注：Broker 间通信和客户端接入若依赖 TLS/SASL，应明确其完整性保护作用。
- 预期证据：TLS/SASL 配置截图、证书材料。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">ssl.keystore.location<span class="o">=</span>/etc/kafka/ssl/broker.jks
</span></span><span class="line"><span class="cl">ssl.truststore.location<span class="o">=</span>/etc/kafka/ssl/truststore.jks
</span></span><span class="line"><span class="cl">ssl.client.auth<span class="o">=</span>required
</span></span><span class="line"><span class="cl">sasl.enabled.mechanisms<span class="o">=</span>SCRAM-SHA-256
</span></span></code></pre></div>
</details>



## 数据保密性

### A. TLS 与加密传输

**核查命令**：

```bash
grep -n "ssl.keystore\\|ssl.truststore\\|ssl.client.auth" config/server.properties 2>/dev/null
```

- 备注：敏感业务消息和管理连接应优先通过 TLS 保护。
- 预期证据：SSL 参数截图、证书截图。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">ssl.keystore.location<span class="o">=</span>/etc/kafka/ssl/broker.jks
</span></span><span class="line"><span class="cl">ssl.truststore.location<span class="o">=</span>/etc/kafka/ssl/truststore.jks
</span></span><span class="line"><span class="cl">ssl.client.auth<span class="o">=</span>required
</span></span><span class="line"><span class="cl">ssl.endpoint.identification.algorithm<span class="o">=</span>HTTPS
</span></span></code></pre></div>
</details>



### B. 敏感配置保护

**核查命令**：

```bash
grep -R "password\\|secret\\|jaas" config 2>/dev/null
```

- 备注：JAAS 文件、Keystore/Truststore 密码、脚本参数中的敏感信息是重点。
- 预期证据：脱敏截图、权限截图、密钥管理说明。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">grep password/jaas config
</span></span><span class="line"><span class="cl">config/kafka_server_jaas.conf:    <span class="nv">password</span><span class="o">=</span><span class="s2">&#34;***&#34;</span><span class="p">;</span>
</span></span><span class="line"><span class="cl">config/client.properties: ssl.truststore.password<span class="o">=</span>***
</span></span><span class="line"><span class="cl">（密钥库口令经 KMS 加密或环境变量注入，文件权限 600）
</span></span></code></pre></div>
</details>



## 备份恢复

### A. 配置备份

**核查命令**：

```bash
find config -type f 2>/dev/null
```

- 备注：应覆盖 `server.properties`、JAAS、证书、脚本和集群关键配置。
- 预期证据：备份目录截图、策略说明。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">config/server.properties
</span></span><span class="line"><span class="cl">config/consumer.properties
</span></span><span class="line"><span class="cl">config/kafka_server_jaas.conf
</span></span><span class="line"><span class="cl">config/log4j.properties
</span></span></code></pre></div>
</details>



### B. 元数据与日志段保护

**核查命令**：

```bash
grep -n "log.dirs" config/server.properties 2>/dev/null
```

- 备注：主题数据和元数据保护依赖集群副本、磁盘备份和故障切换策略综合实现。
- 预期证据：数据目录截图、备份说明、架构材料。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">log.dirs<span class="o">=</span>/data/kafka/logs
</span></span><span class="line"><span class="cl">ls /data/kafka/logs <span class="p">|</span> head
</span></span><span class="line"><span class="cl">demo-order-0/  demo-order-1/  __consumer_offsets-0/
</span></span></code></pre></div>
</details>



### C. 恢复能力

**核查命令**：

```bash
bin/kafka-topics.sh --bootstrap-server <地址> --list 2>/dev/null
```

- 备注：现场应说明节点故障、Topic 恢复、配置回滚或重建策略。
- 预期证据：恢复手册、演练记录、工单。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">bin/kafka-topics.sh --list
</span></span><span class="line"><span class="cl">demo-order
</span></span><span class="line"><span class="cl">demo-payment
</span></span><span class="line"><span class="cl">demo-log-collect
</span></span><span class="line"><span class="cl">__consumer_offsets
</span></span></code></pre></div>
</details>



## 剩余信息保护

### A. 历史日志段与测试主题

**核查命令**：

```bash
find . -type d | grep -E "logs|old|backup"
```

- 备注：历史日志段、测试主题、临时脚本和无用 broker 数据应及时清理。
- 预期证据：目录截图、清理说明。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">find . -type d
</span></span><span class="line"><span class="cl">logs/  logs/archive/  old-broker-backup/
</span></span><span class="line"><span class="cl">（存在归档目录与旧版本备份，纳入备份策略管理）
</span></span></code></pre></div>
</details>



### B. 凭据残留

**核查命令**：

```bash
grep -R "password\\|secret\\|token" . 2>/dev/null
```

- 备注：配置、日志和脚本中残留敏感信息应记录并整改。
- 预期证据：脱敏截图、整改说明。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">grep password/secret/token .（节选）
</span></span><span class="line"><span class="cl">config/kafka_server_jaas.conf: <span class="nv">password</span><span class="o">=</span><span class="s2">&#34;***&#34;</span>
</span></span><span class="line"><span class="cl">logs/server.log:<span class="o">[</span>2026-08-24 10:14:20<span class="o">]</span> Sasl authentication error <span class="k">for</span> User:demo-consumer
</span></span><span class="line"><span class="cl">（口令均为掩码注入，日志中无敏感明文）
</span></span></code></pre></div>
</details>



## 个人信息保护

### A. 消息主题中的个人信息

**核查命令**：

```bash
bin/kafka-topics.sh --bootstrap-server <地址> --list 2>/dev/null
```

- 备注：不建议现场直接消费敏感消息，可通过主题命名、业务说明和授权流程判断是否承载个人信息。
- 【不适用】若 Kafka 传输内容经业务确认不含个人信息，或仅承载系统事件、监控指标、非敏感技术消息，则该点可判定为不适用。依据：GB/T 28448-2019 个人信息保护控制点仅适用于实际处理个人信息的对象。
- 预期证据：主题清单截图、业务访谈记录。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">bin/kafka-topics.sh --list
</span></span><span class="line"><span class="cl">demo-order
</span></span><span class="line"><span class="cl">demo-payment
</span></span><span class="line"><span class="cl">__consumer_offsets
</span></span><span class="line"><span class="cl">（topic 命名不包含个人信息字段）
</span></span></code></pre></div>
</details>



### B. 导出与共享控制

**核查命令**：

```bash
find . -type f | grep -i "export\\|consumer"
```

- 备注：需关注测试消费者、导出脚本、离线同步任务对个人信息的复制和扩散风险。
- 【不适用】若 Kafka 平台无面向运维的消息导出、批量共享能力，且消息中亦不含个人信息，则该点对 Kafka 组件可判定为不适用。依据：GB/T 28448-2019 按对象实际处理和输出能力判定。
- 预期证据：权限说明、制度、访谈记录。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">find . -type f <span class="p">|</span> grep consumer
</span></span><span class="line"><span class="cl">bin/kafka-console-consumer.sh
</span></span><span class="line"><span class="cl">bin/kafka-consumer-groups.sh
</span></span><span class="line"><span class="cl">（控制台消费工具保留，使用需堡垒机审批并留痕）
</span></span></code></pre></div>
</details>



## 入侵防范

### A. 管理端口与未授权访问

**核查命令**：

```bash
grep -n "listeners\\|advertised.listeners" config/server.properties 2>/dev/null
ss -lntp | grep 9092
```

- 备注：重点核查 Broker、控制面和管理接口是否暴露到无关网络。
- 预期证据：端口截图、配置截图、网络 ACL 材料。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="nv">listeners</span><span class="o">=</span>SASL_SSL://192.168.10.21:9093
</span></span><span class="line"><span class="cl">ss -lntp <span class="p">|</span> grep <span class="m">9092</span>
</span></span><span class="line"><span class="cl">（9092 无监听输出，仅 <span class="m">9093</span> SASL_SSL 对外）
</span></span><span class="line"><span class="cl">LISTEN <span class="m">0</span> <span class="m">50</span> 192.168.10.21:9093
</span></span></code></pre></div>
</details>



### B. 高危 Topic 与默认开放能力

**核查命令**：

```bash
bin/kafka-acls.sh --bootstrap-server <地址> --list 2>/dev/null
```

- 备注：关注未启用 ACL、测试 Topic、大范围匿名访问和过度授权问题。
- 预期证据：ACL 截图、Topic 清单、处置说明。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">bin/kafka-acls.sh --list（节选）
</span></span><span class="line"><span class="cl">Current ACLs <span class="k">for</span> resource <span class="sb">`</span>Group:demo-group<span class="sb">`</span>:
</span></span><span class="line"><span class="cl">  <span class="nv">principal</span><span class="o">=</span>User:demo-consumer, <span class="nv">operation</span><span class="o">=</span>READ
</span></span><span class="line"><span class="cl">Current ACLs <span class="k">for</span> resource <span class="sb">`</span>Cluster:kafka-cluster<span class="sb">`</span>:
</span></span><span class="line"><span class="cl">  <span class="nv">principal</span><span class="o">=</span>User:admin, <span class="nv">operation</span><span class="o">=</span>ClusterAction
</span></span></code></pre></div>
</details>



### C. 版本与漏洞风险

**核查命令**：

```bash
bin/kafka-topics.sh --version 2>/dev/null
```

- 备注：需确认版本、依赖组件和历史漏洞整改情况。
- 预期证据：版本截图、补丁或整改记录。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">bin/kafka-topics.sh --version
</span></span><span class="line"><span class="cl">2.8.1 <span class="o">(</span>Commit:839b886f9b732b15<span class="o">)</span>
</span></span><span class="line"><span class="cl">（版本 2.8.1，已知漏洞修复情况见补丁台账）
</span></span></code></pre></div>
</details>



### D. 防护与告警联动

**核查命令**：

```bash
journalctl | grep kafka | tail -n 50
```

- 备注：Kafka 入侵防范通常依赖网络隔离、主机防护、日志平台和监控告警联动。
- 预期证据：平台截图、告警记录、主机防护材料。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">journalctl <span class="p">|</span> grep kafka（节选）
</span></span><span class="line"><span class="cl">Aug <span class="m">24</span> 10:14:20 host kafka<span class="o">[</span>2201<span class="o">]</span>: Failed authentication with /192.168.8.66
</span></span><span class="line"><span class="cl">Aug <span class="m">24</span> 10:14:25 host firewall: DROP <span class="nv">SRC</span><span class="o">=</span>192.168.8.66 <span class="nv">DST</span><span class="o">=</span>192.168.10.21 <span class="nv">PROTO</span><span class="o">=</span>TCP <span class="nv">DPT</span><span class="o">=</span><span class="m">9093</span>
</span></span><span class="line"><span class="cl">（认证失败事件联动防火墙封禁，并上送安全平台告警）
</span></span></code></pre></div>
</details>
