Solaris安全加固实施.docx
- 文档编号:757408
- 上传时间:2023-04-30
- 格式:DOCX
- 页数:15
- 大小:22.30KB
Solaris安全加固实施.docx
《Solaris安全加固实施.docx》由会员分享,可在线阅读,更多相关《Solaris安全加固实施.docx(15页珍藏版)》请在冰点文库上搜索。
Solaris安全加固实施
目录
1.内容说明3
2.系统补丁3
2.1下载系统补丁3
2.2安装系统补丁4
2.2.1打单个补丁4
2.2.2安装推荐补丁包4
2.3注意事项4
3.网络服务加固5
3.1禁止不必要的服务5
3.2更改服务提示和警告,6
3.3修改服务选项和权限设置6
4.调整内核参数7
4.1调整TCP/IP内核参数7
4.2防止堆栈中执行代码8
4.3调整TCP序列号的产生算法8
5本地安全加固8
5.1禁止数据包转发使用默认路由8
5.2使尝试登录失败记录有效8
5.3检查系统中安全配置文件8
5.4设定系统日志和审计行为9
5.5禁止root用户远程登录9
5.6将EEPROM设于安全的模式9
5.7检查系统中重要文件的属性值9
5.8审查root属主的setgid和setuid程序10
5.9审查root的环境变量13
5.10审查crontab策略13
5.11删除不需要的crons13
5.12使X更加安全13
5.13激活SUN-DES-1鉴别13
安全加固实施反馈表
实施措施
是否实施
备注
系统补丁
下载系统补丁
安装系统补丁
网络服务加固
禁止不必要的服务
更改服务提示和警告
修改服务选项和权限设置
调整内核参数
调整TCP/IP内核参数
防止堆栈中执行代码
调整TCP序列号的产生算法
本地安全加固
禁止数据包转发使用默认路由
使尝试登录失败记录有效
检查系统中安全配置文件
设定系统日志和审计行为
禁止root用户远程登录
将EEPROM设于安全的模式
检查系统中重要文件的属性值
审查root属主的setgid和setuid程序
审查root的环境变量
审查crontab策略
删除不需要的crons
使X更加安全
激活SUN-DES-1鉴别
Solaris安全加固实施方案
1.内容说明
在本文档中,将Solaris系统的安全加固分为四大步骤进行实施,包括系统补丁、网络服务加固、内核参数调整和本地安全加固。
系统补丁将描述如何得到系统的最新补丁、如何为系统打单个补丁等方法,网络服务加固主要描述如何加固存在安全漏洞的网络服务、封闭不必要的网络服务等,内核参数调整描述如何用Solaris系统灵活的内核参数调整方法加固系统安全,最后,本地安全加固描述如何在本地设定系统自身的安全配置,以达到加固系统安全性能的目的。
对于开展具体应用业务中涉及安全安的其它问题,本文没有给予描述,应视具体情况灵活应用。
2.系统补丁
2.1下载系统补丁
访问sun公司的站点,可以得到最新的系统补丁。
在sun公司的站点中,通过以下URL可以得到任何系统补丁:
ftp:
//
该目录下,重要的系统补丁都可以找到,其中文件的组织形式是:
⏹xxxxxx-xx.zip:
x代表一个0-9的数字,这是sun发布的单个系统补丁,当目标系统中已经有较多的补丁,缺少个别系统补丁时,就可以下载单个补丁文件,为系统打单个补丁。
对于单个补丁的说明信息,可以参见如下网址:
⏹X_Recommended.tar.Z或X_Recommended.zip:
X是系统代号,如2.3代表Solaris2.3系统,该包中包括对相应系统Sprace版本的推荐安装的补丁包,而X_x86_Recommended.tar.Z或X_x86_Recommended.zip是相应系统X86版本的推荐补丁包。
如果是新装的操作系统或系统内尚未安装任何系统补丁,可以安装该推补丁荐包,该包解压缩后有详细的安装方法说明。
2.2安装系统补丁
在安装系统补丁之前,可用showrev–p命令查看系统当前已经装的补丁,以决定是打单个的补丁包,还是使用推荐的整个补丁包。
2.2.1打单个补丁
1.下载相应的补丁文件,如108869-18.zip
2.解压缩相应的文件,如unzip108869-18.zip,生成解压缩目录108869-18
3.以root身份执行如下的命令patchadd<目录>,如patchadd108869-18
4.使用patchadd–p现实补丁的使用情况。
2.2.2安装推荐补丁包
1.下载相应的补丁包文件,如8_Recommended.zip
2.解压缩相应的文件,如ungzip8_Recommended.zip,生成解压缩目录8_Recommended
3.进入相应的目录,以root身份执行如下的命令./install_cluster,
2.3注意事项
1.下载单个补丁文件时,一定注意区分补丁文件适用的版本和硬件结构。
2.安装补丁的时候必须以root用户身份执行,最后使系统进入单用户模式,在进行打补丁的工作,系统替换正在使用的文件出错。
3.系统打完补丁之后需要重新启动。
4.在安装系统推荐补丁包时,由于整个补丁包体积很大,必须要考虑磁盘空间的问题,可以使用df-k命令查看磁盘空间情况,再决定将文件解压缩在那里。
3.网络服务加固
3.1禁止不必要的服务
1.编辑/ect/inetd.conf文件,该文件中定义了用inetd进程开启的网络服务,大部分网络服务的开启与关闭都是在这里定义的。
该文件每行定义一个网络服务,在需要禁止的服务定义行前,加上‘#’,便可以禁止该网络服务在系统启动时被打开。
通常情况下,明确需要禁止的网络服务有:
rpc.ttdb
rpc.sadmin
rpc.cmsd
finger
echo
time
discard
comsat
rsh
rlogin
rexec
2.系统中很有服务并非在有inetd进程开启,而是在系统引导时由服务启动脚本启动的。
如果系统不需要该项服务,也可以禁止这些服务的启动,具体方法是:
将启动这些服务的脚本文件改成不是以S开头的文件,便可以禁止相应的网络服务了。
例如S88sendmail控制sendmail服务与操作系统一起启动,只要将其改为bakS88sendmail便可以禁止sendmail服务的启动了。
具体的网络服务和启动脚本文件对应列表如下:
rpcbind:
/etc/rc2.d/S71rpc
lpd:
/etc/rc2.d/S72slpd、/etc/rc2.d/S80spc
uucp:
/etc/rc2.d/S70uucp
cron:
/etc/rc2.d/S75cron
savecore:
/etc/rc2.d/S75savecore
sendmail:
/etc/rc2.d/S88sendmail
autofs:
/etc/rc2.d/S74autofs
snmp:
/etc/rc2.d/K07snmpdx、/etc/rc3.d/S76snmpdx
CDE:
/etc/rc2.d/S99dtlogin
nfs:
/etc/rc3.d/S15nfs.server
nscd:
/etc/rc2.d/S76nscd、/etc/rc2.d/.S76nscd
ntp:
/etc/rc2.d/S74xntpd
named:
/etc/named.conf
3.2更改服务提示和警告,
更改服务提示和警告信息,可以隐藏一些重要的系统信息,迷惑攻击者。
具体方法是,在/etc/default目录中建立与服务名称相对应的文件,如telnet服务对应的文件名称为telnetd,其内容中有如下一行:
BANNER="用户定义的警告语句"
则在系统telnet登录的时候,出现用户自己定义的警告语句,而非系统默认的提示语句。
ftp服务同样可以定制提示和警告语句。
3.3修改服务选项和权限设置
Solaris系统中,有些服务是可以自行设置访问权限控制的,如ftp服务,在/etc/ftpusers文件中出现的用户,是不允许ftp登录的。
通常下列用户必须出现在该文件中:
root
bin
daemon
nobody
nobody4
admin
sys
lp
uucp
nuucp
noaccess
记录INETD连接的所有信息,在启动inetd进程脚本中,为inetd进程增加“-t”参数运行,即:
/usr/sbin/inetd-s–t,可以记录inetd服务的用户连接信息。
4.调整内核参数
4.1调整TCP/IP内核参数
调整TCP/IP内核参数可以有效的防止多种基于网络数据包的攻击行为,改善网络性能,具体需要调整的参数以及调整的值参考如下:
ndd-set/dev/tcptcp_conn_req_max_q1024
ndd-set/dev/tcptcp_conn_req_max_q010240
ndd-set/dev/tcptcp_ip_abort_cinterval60000
ndd-set/dev/ipip_respond_to_timestamp0
ndd-set/dev/ipip_respond_to_timestamp_broadcast0
ndd-set/dev/ipip_respond_to_address_mask_broadcast0
ndd-set/dev/ipip_ignore_redirect1
ndd-set/dev/ipip_send_redirects0
ndd-set/dev/ipip_forward_src_routed0
ndd-set/dev/ipip_forward_directed_broadcasts0
ndd-set/dev/ipip_forwarding0
ndd-set/dev/ipip_strict_dst_multihoming1
ndd-set/dev/arparp_cleanup_interval60000
ndd-set/dev/ipip_ire_arp_interval60000
ndd-set/dev/ipip_src_route_forward0
ndd-set/dev/ipip_respond_to_echo_broadcast0
可将以上命令写入一脚本中,在系统启动时加载,调整内核参数。
4.2防止堆栈中执行代码
Solaris操作系统从版本7开始支持禁止堆栈中执行代码的功能,这可以有效的防止堆栈溢出攻击,但需要有关的设置和硬件的支持,(只在sun4u/sun4d/sun4m系统中有效),具体调整方法为:
在/etc/system文件中加入以下两行
setnoexec_user_stack=1
setnoexec_user_stack_log=1
4.3调整TCP序列号的产生算法
使用随即TCP序列号产生算法,可以有效的防止IP欺骗攻击,具体方法是:
将/etc/default/inetinit文件中的TCP_STRONG_ISS值由默认的1改变为2,TCP_STRONG_ISS=2
5本地安全加固
5.1禁止数据包转发使用默认路由
使动态路由无效:
touch/etc/notrouter
使用默认路由,在/etc/defaultrouter文件中增加缺省网关的IP地址,
5.2使尝试登录失败记录有效
如下的设置可使尝试登录失败被记录:
touch/var/log/loginlog;
chmod600/var/log/loginlog;
chgrpsys/var/log/loginlog
5.3检查系统中安全配置文件
检查系统中用户设定和系统设定的所有安全配置文件,包括的.rhosts,.netrc,hosts.equiv等文件,确保没有存在潜在的信任主机和用户关系,使这些文件内容为空。
5.4设定系统日志和审计行为
在/etc/syslog.conf中对系统用户的登录行为进行日志纪录;
对系统运行状态行为进行日志纪录;
对系统守护进程的情况进行日志纪录;
设定日志纪录行为等级并且设定访问权限;
有条件的话可指定另一台机器作为loghost。
5.5禁止root用户远程登录
在/etc/default/login中确保root只能本地登录。
console=/dev/console,
并要求口令认证
PASSREQ=YES
5.6将EEPROM设于安全的模式
通过设定对“oksetenvsecurity-mode=command”的密码保护来实现。
此时在ok状态下只能运行执行boot命令和go命令,其它命令需要密码才能执行。
密码设置方法为“oksetenvsecurity-password=用户密码”。
也可以在系统启动后以root身份执行如下命令,能产生同样的效果“/usr/sbin/eepromsecurity-mode=command”。
设置时,注意先设置密码,后设置模式。
5.7检查系统中重要文件的属性值
审查系统中重要的文件的属性值,包括系统配置文件可、常用可执行文件等,并检查他们的属主、组属主等属性,确保这些文件有正确的属性设置,下表中给出部分重要文件的推荐属性信息:
文件名称
读写属性值
文件属主
组属主
/etc/passwd
644
root
sys
/etc/shadow
400
root
sys
/etc/group
400
root
sys
/etc/inet/inetd.conf
444
root
sys
/etc/profile
544
root
sys
/usr/sbin/devinfo
500
root
bin
/usr/sbin/snoop
500
root
bin
5.8审查root属主的setgid和setuid程序
使用命令“find/-perm-4000–userroot–print”可以找出系统中被置为setuid且属主为root的文件,在系统中应该保存setgid文件的列表,可以将发现结果与该列表对照,发现有无新增的setuid文件。
另外,系统中的setgid文件要尽量少,可以将不常用的setuid文件用“chmod–s文件名称”命令清除其setuid位。
同样的方法可使用与setgid程序。
以下给出系统中常用的必须的setuid和setgid程序的列表,可供参考。
Setuid文件:
-r-s--x--x1rootbin19484/usr/lib/lp/bin/netpr
-r-sr-xr-x1rootbin13840/usr/lib/fs/ufs/quota
-r-sr-xr-x1rootbin82484/usr/lib/fs/ufs/ufsdump
-r-sr-xr-x1rootbin901204/usr/lib/fs/ufs/ufsrestore
---s--x--x1rootbin4104/usr/lib/pt_chmod
-r-sr-xr-x1rootbin7068/usr/lib/utmp_update
-r-sr-xr-x1rootbin658616/usr/lib/sendmail
-rwsr-xr-x1rootadm5040/usr/lib/acct/accton
-r-sr-xr-x1rootsys27752/usr/bin/sparcv7/ps
-r-sr-xr-x2rootbin11368/usr/bin/sparcv7/uptime
-r-sr-xr-x2rootbin11368/usr/bin/sparcv7/w
-rwsr-xr-x1rootsys36320/usr/bin/at
-rwsr-xr-x1rootsys13796/usr/bin/atq
-rwsr-xr-x1rootsys12756/usr/bin/atrm
-r-sr-xr-x1rootbin17136/usr/bin/crontab
-r-sr-xr-x1rootbin13808/usr/bin/eject
-r-sr-xr-x1rootbin26372/usr/bin/fdformat
-r-sr-xr-x1rootbin29292/usr/bin/login
-rwsr-xr-x1rootsys7328/usr/bin/newgrp
-r-sr-sr-x3rootsys101744/usr/bin/passwd
-r-sr-xr-x1rootbin6508/usr/bin/pfexec
-r-sr-xr-x1rootbin21008/usr/bin/rcp
-r-sr-xr-x1rootbin55480/usr/bin/rdist
-r-sr-xr-x1rootbin16012/usr/bin/rlogin
-r-sr-xr-x1rootbin8964/usr/bin/rsh
-r-sr-xr-x1rootsys17156/usr/bin/su
-r-sr-sr-x3rootsys101744/usr/bin/yppasswd
-r-s--x--x1rootsys341204/usr/bin/admintool
-r-sr-xr-x1rootsys41708/usr/bin/chkey
-r-sr-sr-x3rootsys101744/usr/bin/nispasswd
-r-s--x--x1rootlp9736/usr/bin/cancel
-r-s--x--x1rootlp22456/usr/bin/lp
-r-s--x--x1rootlp7116/usr/bin/lpset
-r-s--x--x1rootlp21592/usr/bin/lpstat
-r-sr-xr-x1rootbin5980/usr/bin/volcheck
-r-sr-xr-x1rootbin10780/usr/bin/volrmmount
---s--x--x1rootuucp69784/usr/bin/ct
-r-sr-sr-x1rootsys22808/usr/dt/bin/dtaction
-r-sr-xr-x1rootbin34036/usr/dt/bin/dtappgather
-r-sr-sr-x1rootdaemon304176/usr/dt/bin/sdtcm_convert
-r-sr-xr-x1rootbin357228/usr/dt/bin/dtprintinfo
-r-sr-xr-x1rootbin164224/usr/dt/bin/dtsession
-rwsrwxr-x1rootbin68860/usr/openwin/bin/xlock
-r-sr-sr-x1rootbin18144/usr/openwin/bin/ff.core
-rwsr-xr-x1rootbin44452/usr/openwin/bin/sys-suspend
-rwsr-xr-x1rootbin27620/usr/openwin/lib/mkcookie
-r-sr-xr-x1rootbin12916/usr/sbin/sparcv7/whodo
-rwsr-xr-x3rootbin17616/usr/sbin/allocate
-rwsr-xr-x1rootbin9800/usr/sbin/mkdevalloc
-rwsr-xr-x1rootbin9948/usr/sbin/mkdevmaps
-r-sr-xr-x1rootbin48028/usr/sbin/ping
-rwsr-xr-x1rootsys22640/usr/sbin/sacadm
-r-sr-xr-x1rootbin35652/usr/sbin/traceroute
-rwsr-xr-x3rootbin17616/usr/sbin/deallocate
-rwsr-xr-x3rootbin17616/usr/sbin/list_devices
-r-s--x--x1rootlp6868/usr/sbin/lpmove
-r-sr-xr-x1rootbin28956/usr/sbin/pmconfig
-r-sr-xr-x1rootbin5584/usr/sbin/aspppls
-r-sr-xr-x1rootbin762688/usr/sbin/static/rcp
-r-sr-xr-x1rootsys22988/usr/ucb/sparcv7/ps
Setguid文件:
-r-xr-sr-x1rootsys10740/usr/bin/sparcv7/ipcs
-r-x--s--x1rootmail61288/usr/bin/mail
-r-x--s--x1rootmail126808/usr/bin/mailx
-r-xr-sr-x1rootsys55168/usr/bin/netstat
-r-sr-sr-x3rootsys101744/usr/bin/passwd
-r-xr-sr-x1roottty11344/usr/bin/write
-r-sr-sr-x3rootsys101744/usr/bin/yppasswd
-r-sr-sr-x3rootsys101744/usr/bin/nispasswd
-r-sr-sr-x1rootsys22808/usr/dt/bin/dtaction
-r-sr-sr-x1rootdaemon304176/usr/dt/bin/sdtcm_convert
-rwxr-sr-x1rootroot1941644/usr/openwin/bin/Xsun
-r-sr-sr-x1rootbin18144/usr/openwin/bin/ff.core
-r-xr-sr-x1rootmail637516/usr/openwin/bin/mailtool
-r-xr-sr-x1rootsys19544/usr/sbin/sparcv7/prtconf
-r-xr-sr-x1rootsys10316/usr/sbin/sparcv7/swap
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Solaris 安全 加固 实施
![提示](https://static.bingdoc.com/images/bang_tan.gif)