Solaris-三级等保现场测评命令单

示例版本:Oracle Solaris 11.4

说明:Oracle 文档可直接支撑 uname -r 为 5.11、cat /etc/release 示例以及 svcs 的状态列格式。

系统版本核查

uname -r
  • 预期现象:Oracle 示例为 5.11。
    示例输出(节选)
    5.11
    
cat /etc/release
  • 预期现象:Oracle 示例可见 Oracle Solaris 11.4 SPARC 等版本标识。
    示例输出(节选)
                           Oracle Solaris 11.4 SPARC
      Copyright (c) 1983, 2022, Oracle and/or its affiliates.
                                 Assembled 14 March 2023
    
cat /etc/hosts.equiv
  • 预期现象:部分主机该文件可能不存在;如存在则应显示信任主机配置。
    示例输出(节选)
    cat: 该文件不存在(部分主机未部署此文件)
    

账户与口令策略核查

cat /etc/default/login | grep passreq
  • 预期现象:目标状态示例为 PASSREQ=YES。
    示例输出(节选)
    PASSREQ=YES
    
logins -p
  • 预期现象:应显示没有密码的账户;无空口令账户时通常无结果或结果为空。
    示例输出(节选)
    # 无匹配输出(无空口令账户时通常无结果)
    
cat /etc/default/passwd
  • 预期现象:应显示密码复杂度要求。
    示例输出(节选)
    #ident  "@(#)default_passwd.dfl"
    MAXWEEKS=12
    MINWEEKS=1
    PASSLENGTH=8
    MINDIGIT=2 MINUPPER=1 MINLOWER=1 MINSPECIAL=0
    
cat /etc/default/security
  • 预期现象:应显示缺省密码长度和复杂度限制。
    示例输出(节选)
    CRYPT_DEFAULT=6
    
cat /etc/security/policy.conf
  • 预期现象:应显示登录失败处理参数,如 LOCK_AFTER_RETRIES。
    示例输出(节选)
    # policy.conf(节选)
    LOCK_AFTER_RETRIES=YES
    CRYPT_DEFAULT=6
    
cat /etc/default/login | grep retries
  • 预期现象:应显示重试次数配置。
    示例输出(节选)
    RETRIES=5
    
cat /etc/profile
  • 预期现象:应显示 TMOUT 等登录超时参数。
    示例输出(节选)
    TMOUT=600 ; export TMOUT
    
cat /etc/passwd
  • 预期现象:应列出本地账户。
    示例输出(节选)
    root:x:0:0:Super-User:/:/usr/bin/bash
    daemon:x:1:1::/:/sbin/noshell
    bin:x:2:2::/usr/bin:/sbin/noshell
    appadm:x:1001:10::/export/home/appadm:/usr/bin/bash
    
cat /etc/shadow
  • 预期现象:应列出口令散列和状态。
    示例输出(节选)
    root:$5$rounds=10000$xxxxxxxx$H4sIAPxxxx...:19602::::::
    daemon:NP:6445::::::
    appadm:$5$rounds=10000$yyyyyyyy$Q2xhVxxxx...:19580:7:84:7:::
    
ls -l /etc/passwd
  • 预期现象:应显示关键文件权限。
    示例输出(节选)
    -rw-r--r--   1 root     sys       1029 Mar 14  2023 /etc/passwd
    
ls -l /etc/group
  • 预期现象:应显示关键文件权限。
    示例输出(节选)
    -rw-r--r--   1 root     sys        398 Mar 14  2023 /etc/group
    
ls -l /etc/shadow
  • 预期现象:应显示关键文件权限。
    示例输出(节选)
    -rw-------   1 root     sys        512 Mar 14  2023 /etc/shadow
    

远程接入与服务核查

cat /etc/ssh/sshd_config
  • 预期现象:应显示 SSH 服务端配置,可核查认证与算法参数。
    示例输出(节选)
    # sshd_config(节选)
    PermitRootLogin no
    MaxAuthTries 4
    LoginGraceTime 60
    Subsystem       sftp    internal-sftp
    
ssh -Q cipher
  • 预期现象:安装 OpenSSH 客户端时应列出支持的对称加密算法。
    示例输出(节选)
    aes128-gcm@openssh.com,aes256-gcm@openssh.com,aes128-ctr,...
    
ssh -Q mac
  • 预期现象:安装 OpenSSH 客户端时应列出支持的 MAC 算法。
    示例输出(节选)
    hmac-sha2-256,hmac-sha2-512,hmac-sha1,hmac-sha2-256-etm@openssh.com
    
ssh -Q kex
  • 预期现象:安装 OpenSSH 客户端时应列出支持的密钥交换算法。
    示例输出(节选)
    curve25519-sha256,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512
    
ssh -Q key
  • 预期现象:安装 OpenSSH 客户端时应列出支持的主机密钥/公钥算法。
    示例输出(节选)
    ecdsa-sha2-nistp256,ssh-ed25519,rsa-sha2-512,rsa-sha2-256
    
ssh -V
  • 预期现象:应输出 OpenSSH 版本号。
    示例输出(节选)
    OpenSSH_8.4, OpenSSL 1.1.1q  5 Jul 2022
    
svcs telnet
  • 预期现象:输出通常包含 STATE、STIME、FMRI 列,状态列常见 online、disabled、maintenance。
    示例输出(节选)
    STATE          STIME    FMRI
    disabled       Mar_14   svc:/network/telnet:default
    
svcs ssh
  • 预期现象:输出通常包含 STATE、STIME、FMRI 列。
    示例输出(节选)
    STATE          STIME    FMRI
    online         Mar_14   svc:/network/ssh:default
    
svcs -a
  • 预期现象:Oracle 示例关键状态包括 legacy_run、disabled、online。
    示例输出(节选)
    online          Mar_14 svc:/network/ssh:default
    disabled        Mar_14 svc:/network/telnet:default
    legacy_run      Mar_14 lrc:/etc/rc2_d/S70uucp
    ...
    
netstat -na | grep -i listen
  • 预期现象:应显示当前监听端口。
    示例输出(节选)
    *.22                 *.*                0      0 65535 LISTEN
    *.111                *.*                0      0 65535 LISTEN
    192.168.10.5.443     *.*                0      0 65535 LISTEN
    
cat /etc/ftpd/ftpusers
  • 预期现象:应显示禁止访问 FTP 的用户列表。
    示例输出(节选)
    root
    daemon
    bin
    sys
    ...
    

安全审计核查

svcs | grep auditd
  • 预期现象:启用审计服务时应显示 auditd 服务项。
    示例输出(节选)
    online         Mar_14   svc:/system/auditd:default
    
cat /etc/default/login | grep syslog
  • 预期现象:目标状态示例为 SYSLOG=YES。
    示例输出(节选)
    SYSLOG=YES
    
cat /etc/syslog.conf
  • 预期现象:应显示日志配置和远程转发设置。
    示例输出(节选)
    auth.notice           @logsvr.example.internal
    *.err;kern.debug;daemon.notice;mail.crit        /var/adm/messages
    
ls -l /var/adm/messages
  • 预期现象:应显示日志文件权限;原始文档给出建议值 600。
    示例输出(节选)
    -rw-------   2 root     sys      286720 Aug 21 09:32 /var/adm/messages
    
ls -l /var/adm/wtmpx
  • 预期现象:应显示日志文件权限;原始文档给出建议值 644。
    示例输出(节选)
    -rw-rw-rw-   1 adm      adm    10485760 Aug 21 18:00 /var/adm/wtmpx
    
ls -l /var/adm/utmpx
  • 预期现象:应显示日志文件权限;原始文档给出建议值 644。
    示例输出(节选)
    -rw-r--rw-   1 adm      bin      96304 Aug 21 18:00 /var/adm/utmpx
    

访问控制核查

cat /etc/default/login | grep console
  • 预期现象:应显示 root 本地终端登录控制参数。
    示例输出(节选)
    CONSOLE=/dev/console
    
cat /etc/hosts.allow
  • 预期现象:应显示允许地址限制规则;未配置时可能为空。
    示例输出(节选)
    sshd: 192.168.10., 203.0.113.20
    
cat /etc/hosts.deny
  • 预期现象:应显示拒绝地址限制规则;未配置时可能为空。
    示例输出(节选)
    ALL: ALL
    
cat /etc/security/audit_control
  • 预期现象:应显示审计控制配置。
    示例输出(节选)
    ## audit_control(节选)
    dir:/var/audit
    flags:lo,ad,ex
    minfree:20
    naflags:lo
    
cat /etc/security/audit_class
  • 预期现象:应显示审计类别定义。
    示例输出(节选)
    fr:no-class,fm:no-class,cl:no-class,pc:process creation,ap:application
    ...
    
cat /etc/security/audit_event
  • 预期现象:应显示审计事件定义。
    示例输出(节选)
    AUE_ACCT:acct:ad:as:na
    AUE_LOGIN:login:ss:ss:ss
    AUE_SU:su:ss:as:ss
    ...
    
cat /etc/security/audit_user
  • 预期现象:应显示审计用户配置。
    示例输出(节选)
    admin:lo,ad
    

最小安装与时间同步核查

pkg info
  • 预期现象:应显示已安装软件包信息;输出通常较长。
    示例输出(节选)
    NAME (PUBLISHER)                   VERSION                    DATE
    compress/bzip2                     1.0.8-11.4.0.0.1.117.3     ...
    network/ssh                        8.4.0-11.4.42.0.0.118.0    ...
    ...
    
crontab -l
  • 预期现象:应显示当前用户计划任务;无任务时可能为空或提示无计划任务。
    示例输出(节选)
    crontab: can't open your crontab file.
    
svcs ntp
  • 预期现象:启用 NTP 服务时应显示对应服务状态;未启用时可能为 disabled 或无结果。
    示例输出(节选)
    STATE          STIME    FMRI
    online         Mar_14   svc:/network/ntp:default
    

入侵防范核查

grep -E '^(PermitRootLogin|LoginGraceTime|MaxAuthTries|AllowUsers|DenyUsers|AllowGroups|DenyGroups)' /etc/ssh/sshd_config
  • 预期现象:应能看到 SSH 暴力破解防护与访问控制相关参数。
    示例输出(节选)
    PermitRootLogin no
    LoginGraceTime 60
    MaxAuthTries 4
    
sshd -T | egrep 'permitrootlogin|logingracetime|maxauthtries|allowusers|denyusers|allowgroups|denygroups'
  • 预期现象:应输出 SSH 服务端当前生效的对应参数值。
    示例输出(节选)
    permitrootlogin no
    logingracetime 60
    maxauthtries 4
    

安全基线与完整性核查

cat /etc/motd
  • 预期现象:应显示登录后提示或告警内容(如已配置)。
    示例输出(节选)
    ******************************************************************
    *  本系统仅供授权人员使用,操作将被审计并记录。                  *
    ******************************************************************
    
pkg verify
  • 预期现象:如存在被篡改或缺失文件,通常会输出校验异常项;无异常时无输出或输出很少。
    示例输出(节选)
    pkg verify: No errors were found.