JBoss

适用范围:JBoss AS、JBoss EAP、WildFly 单机和域模式场景。

不适用标识说明:

  • 使用 【不适用】 明确标记现场可判定为不适用的控制点。
  • 判定依据采用 GB/T 28448-2019 的测评对象边界原则;若控制能力由上位平台、业务系统或主机层实现,应明确记录后再作不适用判断。

基础信息

核查命令

ps -ef | grep -E "jboss|wildfly"
find . -name standalone.xml -o -name domain.xml
bin/standalone.sh --version 2>/dev/null
  • 备注:先确认安装路径、运行用户、版本、独立模式或域模式、管理地址、日志目录。
  • 预期证据:版本截图、进程截图、配置目录截图、端口截图。
示例输出(节选)
ps -ef | grep jboss(节选)
jboss 11101 java -D[Standalone] -jar jboss-modules.jar
find . -name standalone.xml
standalone/configuration/standalone.xml
bin/standalone.sh --version
JBoss EAP 7.4.12.GA (WildFly Core 15.0.18.Final)

身份鉴别

A. 管理控制台与 CLI 入口

核查命令

grep -R "management-interfaces\\|http-interface" standalone/configuration domain/configuration 2>/dev/null
  • 备注:重点核查管理控制台、CLI 端口和管理地址是否受控。
  • 预期证据:管理地址截图、登录页截图、配置截图。
示例输出(节选)
grep management-interfaces standalone/configuration(节选)
<management-interfaces>
  <http-interface security-realm="ManagementRealm" http-upgrade-enabled="true">
    <socket-binding http="management-http"/>
(管理接口绑定 management-http,仅 127.0.0.1/内网可达)

B. 管理账户

核查命令

find . -name mgmt-users.properties -o -name application-users.properties
  • 备注:原始资料重点为 jmx-console-roles.propertiesjmx-console-users.propertiesweb.xmlserver.xml,现场还应关注管理账户文件与认证配置。
  • 预期证据:账户文件截图、用户台账、访谈记录。
示例输出(节选)
find . -name mgmt-users.properties
standalone/configuration/mgmt-users.properties
domain/configuration/application-users.properties
(用户口令以 HEX(MD5(user:realm:password)) 存储,无明文)

C. 口令策略与锁定

核查命令

grep -R "security-realm\\|ldap\\|authentication" standalone/configuration domain/configuration 2>/dev/null
  • 备注:JBoss/WildFly 口令复杂度和锁定策略常依赖外部目录或管理平台,应按等效控制判断。
  • 预期证据:认证配置截图、统一认证平台截图、制度。
示例输出(节选)
grep security-realm/ldap standalone/configuration(节选)
<security-realm name="LdapRealm">
  <authentication><ldap connection="demo-ldap" base-dn="ou=users,dc=demo,dc=local"/></authentication>
(管理面接入企业 LDAP 统一认证)

D. 会话与 HTTPS

核查命令

grep -R "ssl\\|https\\|secure-socket-binding" standalone/configuration domain/configuration 2>/dev/null
  • 备注:管理控制台应尽量通过 HTTPS、堡垒机、VPN 或内网专线访问。
  • 【不适用】如现场未启用管理控制台或控制台已下线,仅保留受控 CLI/脚本运维,则“管理登录会话超时”对 JBoss 组件可判定为不适用。依据:GB/T 28448-2019 身份鉴别控制点应基于实际存在的登录交互面。
  • 预期证据:HTTPS 截图、证书截图、远程运维制度。
示例输出(节选)
grep https-listener standalone/configuration(节选)
<https-listener name="https" socket-binding="https" security-realm="ApplicationRealm" enable-http2="true"/>
(对外仅 HTTPS,http-listener 已移除)

访问控制

A. 管理接口限制

核查命令

grep -R "inet-address\\|any-address" standalone/configuration domain/configuration 2>/dev/null
  • 备注:如绑定 0.0.0.0,应特别核查网络侧是否有限制。
  • 预期证据:监听地址截图、网络 ACL 材料。
示例输出(节选)
grep inet-address standalone/configuration(节选)
<inet-address value="${jboss.bind.address.management:127.0.0.1}"/>
<inet-address value="${jboss.bind.address:192.168.10.91}"/>
(管理接口默认仅回环地址)

B. 角色与授权

核查命令

grep -R "role-mapping\\|rbac" standalone/configuration domain/configuration 2>/dev/null
  • 备注:应核查管理员、操作员、监控角色是否分离。
  • 预期证据:角色配置截图、审批记录。
示例输出(节选)
grep role-mapping standalone/configuration(节选)
<role-mapping><role name="Administrator"><include><name value="wl-admin"/></include></role></role-mapping>
(RBAC 启用,Administrator/Operator/Monitor 分级授权)

C. 默认应用与测试组件

核查命令

find standalone/deployments domain/deployments -maxdepth 1 2>/dev/null
  • 备注:默认控制台、示例应用、测试应用应清理或限制。
  • 预期证据:部署目录截图、处置说明。
示例输出(节选)
standalone/deployments:
demo-app.war
README.txt
(仅部署业务应用,无自带示例残留)

D. 文件权限

核查命令

ls -ld standalone domain
find standalone/configuration -maxdepth 1 -type f -exec ls -l {} \\
2>/dev/null
  • 备注:配置目录、日志目录和部署目录权限应最小化,运行用户不宜过高。
  • 预期证据:权限截图、运行用户截图。
示例输出(节选)
drwxr-xr-x jboss jboss standalone
-rw-r----- jboss jboss standalone/configuration/standalone.xml
-rw------- jboss jboss standalone/configuration/mgmt-users.properties
(配置文件权限合规)

安全审计

A. 日志配置

核查命令

grep -R "periodic-rotating-file-handler\\|size-rotating-file-handler\\|access-log" standalone/configuration domain/configuration 2>/dev/null
  • 备注:核查是否启用访问日志、错误日志、管理日志和轮转策略。
  • 预期证据:日志配置截图、日志目录截图。
示例输出(节选)
grep periodic-rotating standalone/configuration(节选)
<size-rotating-file-handler name="FILE" rotate-size="50m" max-backup-index="10"/>
<periodic-rotating-file-handler name="ACCESS" suffix=".yyyy-MM-dd"/>
(server.log 按大小滚动保留 10 份,access 按日滚动)

B. 管理与访问日志

核查命令

find standalone/log -type f 2>/dev/null
find domain/servers -path "*log*" -type f 2>/dev/null
  • 备注:现场要能区分管理操作、访问请求和系统错误日志。
  • 预期证据:日志样例截图、平台材料。
示例输出(节选)
find standalone/log
standalone/log/server.log
standalone/log/server.log.1.gz
standalone/log/access_log.2026-08-24
(日志完整可查,纳入集中采集)

C. 留存与轮转

核查命令

grep -R "suffix\\|rotate-size\\|max-backup-index" standalone/configuration domain/configuration 2>/dev/null
  • 备注:保留期限、轮转数量和备份策略应有制度或访谈支撑。
  • 预期证据:轮转配置截图、制度、访谈记录。
示例输出(节选)
grep rotate-size/max-backup-index standalone/configuration
rotate-size="50m"
max-backup-index="10"
suffix=".yyyy-MM-dd"
(轮转策略明确,配合外部清理保留 90 天)

D. 集中审计

核查命令

grep -R "syslog\\|socket-handler" standalone/configuration domain/configuration 2>/dev/null
  • 备注:如日志外发到平台,应补平台检索和告警证据。
  • 预期证据:平台截图、告警截图。
示例输出(节选)
grep syslog standalone/configuration(节选)
<custom-handler name="SYSLOG" class="org.jboss.logmanager.handlers.SyslogHandler">
(server 日志同步转发 rsyslog 上送集中平台)

数据完整性

A. 配置完整性

核查命令

ls -l standalone/configuration/standalone.xml 2>/dev/null
ls -l domain/configuration/domain.xml 2>/dev/null
  • 备注:配置应纳入变更管理,域模式需关注多节点一致性。
  • 预期证据:配置截图、变更单、发布记录。
示例输出(节选)
-rw-r----- jboss jboss standalone/configuration/standalone.xml
(主配置存在且权限合规,变更经 Git 管理)

B. 传输完整性

核查命令

grep -R "https-listener\\|ssl-context" standalone/configuration domain/configuration 2>/dev/null
  • 备注:管理面和敏感业务面如未启用加密,应记录风险或说明前置替代措施。
  • 预期证据:SSL 参数截图、证书材料。
示例输出(节选)
grep https-listener standalone/configuration
<https-listener name="https" socket-binding="https" security-realm="ApplicationRealm"/>
(业务流量全量 HTTPS)

数据保密性

A. 管理与业务加密

核查命令

grep -R "key-store\\|trust-store\\|credential-reference" standalone/configuration domain/configuration 2>/dev/null
  • 备注:现场重点关注管理控制台、CLI、应用接口是否加密。
  • 预期证据:HTTPS/证书截图、密钥库截图。
示例输出(节选)
grep credential-reference standalone/configuration(节选)
<credential-reference store="demo-store" alias="db-pass"/>
(口令经 Credential Store 加密引用,无明文)

B. 敏感配置保护

核查命令

grep -R "password\\|secret\\|credential" standalone/configuration domain/configuration 2>/dev/null
  • 备注:明文口令、密钥和数据源配置要重点核查。
  • 预期证据:脱敏截图、密钥管理说明。
示例输出(节选)
grep password standalone/configuration(节选)
mgmt-users.properties: wl-admin=HEX(***)
credential-store: alias 引用加密条目
(未见明文口令)

备份恢复

A. 配置备份

核查命令

find . -maxdepth 2 -type d | grep -i backup
  • 备注:应覆盖配置、部署包、证书和脚本。
  • 预期证据:备份目录截图、策略说明。
示例输出(节选)
find . -maxdepth 2 -type d | grep backup
backup-eap-20260801/
(每周 backupConfig 备份至独立目录)

B. 日志与部署备份

核查命令

find standalone/log domain/servers -type f 2>/dev/null | head
  • 备注:日志备份和归档按现场口径说明,关键部署包应可追溯恢复。
  • 预期证据:归档截图、平台材料。
示例输出(节选)
find standalone/log domain/servers | head
standalone/log/server.log
standalone/log/access_log.2026-08-24
(日志纳入备份范围)

C. 恢复能力

核查命令

find . -type f | grep -i "restore\\|recover"
  • 备注:重点核查域恢复、节点重建、应用回滚或容器重建方案。
  • 预期证据:恢复手册、演练记录、访谈记录。
示例输出(节选)
find . | grep restore|recover
scripts/restore-standalone.sh
backup-eap-20260801/standalone.tar.gz
(恢复脚本与最近备份包齐备,演练记录见台账)

剩余信息保护

A. 历史部署与临时文件

核查命令

find . -type d | grep -E "tmp|temp|old|backup|data"
  • 备注:停用应用、旧部署包、临时缓存应及时清理。
  • 预期证据:目录截图、清理说明。
示例输出(节选)
find . -type d | grep tmp|old|backup
standalone/tmp/  standalone/data/  old-conf/
(tmp/data 运行期自动管理,old-conf 移出生产目录计划中)

B. 凭据残留

核查命令

grep -R "password\\|secret\\|token" . 2>/dev/null
  • 备注:启动脚本、配置、日志和历史文件中残留敏感信息应记录并整改。
  • 预期证据:脱敏截图、整改说明。
示例输出(节选)
grep password/token .(节选)
mgmt-users.properties: HEX 哈希
logs/server.log: WFLYDM0101: authentication failed(无敏感明文)

个人信息保护

A. 日志中的个人信息

核查命令

grep -R "mobile\\|phone\\|idcard\\|email\\|name" standalone/log domain/servers 2>/dev/null
  • 备注:需结合业务应用判断个人信息是否被访问日志、异常日志、管理日志记录。
  • 【不适用】若 JBoss 仅作为应用容器,中间件层不直接提供个人信息查询、展示、共享或导出能力,则该点对 JBoss 本体可判定为不适用。依据:GB/T 28448-2019 个人信息保护控制点按实际处理环节适用。
  • 预期证据:日志截图、应用截图、访谈记录。
示例输出(节选)
grep mobile/logs(节选)
access_log.2026-08-24: GET /api/user?idcard=110***********1234
(身份证号已在应用侧脱敏输出)

B. 最小化授权与导出控制

核查命令

find . -type f | grep -i "export\\|download"
  • 备注:若应用提供后台导出、文件下载、调试接口,应核查越权和脱敏控制。
  • 【不适用】若 JBoss 管理侧不承载个人信息导出与共享功能,则该点对中间件层可判定为不适用。依据:GB/T 28448-2019 按对象实际业务功能判定。
  • 预期证据:权限截图、制度、访谈记录。
示例输出(节选)
find . | grep export|download
deployments/demo-app/export-api.jar
(导出功能由应用层鉴权)

入侵防范

A. 管理面与默认控制台暴露

核查命令

grep -R "management-interfaces\\|jmx-console\\|console" standalone/configuration domain/configuration 2>/dev/null
  • 备注:重点核查管理控制台、旧版 jmx-console、管理端口和默认界面暴露情况。
  • 预期证据:配置截图、访问测试截图、网络材料。
示例输出(节选)
grep management-interfaces/console standalone/configuration(节选)
<http-interface security-realm="ManagementRealm" http-upgrade-enabled="true">
socket-binding management-http=9990(仅 127.0.0.1)
(无 jmx-console/web-console 暴露,管理口收敛)

B. 高危配置与默认组件

核查命令

find . -type f | grep -E "jmx-console|web-console|invoker"
  • 备注:老版本常见默认控制台、测试组件和弱口令风险,应重点清理。
  • 预期证据:目录截图、处置说明、访谈记录。
示例输出(节选)
find . | grep jmx-console|web-console|invoker
(EAP7 无 legacy jmx-console;invoker 相关模块未部署)

C. 版本与漏洞风险

核查命令

bin/standalone.sh --version 2>/dev/null
  • 备注:JBoss/WildFly 老版本漏洞较多,应确认版本和补丁整改情况。
  • 预期证据:版本截图、补丁记录、整改说明。
示例输出(节选)
bin/standalone.sh --version
JBoss EAP 7.4.12.GA (WildFly Core 15.0.18.Final)

D. 入侵防护联动

核查命令

find standalone/log domain/servers -type f 2>/dev/null | head
  • 备注:应结合 WAF、主机防护和日志告警平台判断是否具备发现与阻断能力。
  • 预期证据:安全设备截图、告警记录、日志平台材料。
示例输出(节选)
find standalone/log | head
server.log  server.log.1.gz  access_log.2026-08-24
tail server.log
2026-08-24 10:12:44,340 WARN [org.wildfly.security] ELY05103: Authentication failed for user 'test' from /192.168.8.66
(认证失败告警联动 SIEM 封禁)