分享
 
 
 

SUN系统的基本安全配置

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

一个SUN系统就象和NT系统一样,容易受到来自internet的各种可恶的攻击。幸运的是,不象NT,你可以用以下三个简单的手段把SUN变的相对安全些,它们是:

1)防止堆栈溢出

2)关闭不用的服务

3)给系统打补丁

#1 防止堆栈溢出

至少90%以上的安全问题都是来自所谓的“堆栈溢出”。攻击者通过给一个以root身份

运行的程序提供比它所预期的输入多得多的东西,使被攻击程序无法处理而改变执行流程去执行攻击者指定的代码。

Solaris 2.6和Solaris 7都具备把用户堆栈设成不可执行的能力,以使这种攻击不

能得逞。要使能这个特点:

0)变成root

1)对/etc/system文件做个拷贝 cp /etc/system /etc/system.BACKUP

2)用你最钟爱的编辑器编辑/etc/system文件

3)到文件的最后,插入以下几行:

set noexec_user_stack=1

set noexec_user_stack_log=1

4)保存文件,退出编辑器

一旦重启机器,这些改变就会生效。如果这不是一个你可以关闭的系统,那么你用

adb来改变一个运行中的系统的参数也是可能的,但这不是我个人乐意去干的事。

当然会有些合法使用可执行堆栈的程序在你做出如上改变后而不能正常运行。所幸

的是这样的程序的并不多,我所知的就只有GNU ada 编译器。

#2 在inetd.conf中关闭用不着的服务

有许多用不着的服务自动的处于使能状态。它们中可能存在的漏洞将使攻击者甚至不需要一个账户就能控制你的机器。关闭这些不需要的服务来保护你的系统,你可以用如下方法来关闭:

0)变成root

1)对inetd的配置文件/etc/inetd.conf做个拷贝 cp /etc/inetd.conf /etc/inetd.conf.BACKUP

2)编辑/etc/inetd.conf文件

未被激活的服务是在前面被“#“符号注释掉的,举个例子,你的部份inetd.conf可能是这样的:

# Tnamed serves the obsolete IEN-116 name server protocol.

#

name dgram udp wait root /usr/sbin/in.tnamed in.tnamed

不需要这个服务,因为你们中的99.999%不会用到这个“已经被废弃的IEN-116名字服务协议“,把这个注释掉以后,这行看起来会象是:

# Tnamed serves the obsolete IEN-116 name server protocol.

#

#name dgram udp wait root /usr/sbin/in.tnamed in.tnamed

^

|

看到这个新的“#” 符号了吧

我建议注释掉几乎所有的服务,只留下:

ftp stream tcp nowait root /usr/sbin/in.ftpd in.ftpd

telnet stream tcp nowait root /usr/sbin/in.telnetd in.telnetd

time stream tcp nowait root internal

time dgram udp wait root internal

echo stream tcp nowait root internal

echo dgram udp wait root internal

discard stream tcp nowait root internal

discard dgram udp wait root internal

daytime stream tcp nowait root internal

daytime dgram udp wait root internal

rstatd/2-4 tli rpc/datagram_v wait root /usr/lib/netsvc/rstat/rpc.rstatd rpc.rstatd

fs stream tcp wait nobody /usr/openwin/lib/fs.auto fs

100083/1 tli rpc/tcp wait root /usr/dt/bin/rpc.ttdbserverd rpc.ttdbserverd

在只需要不多图形操作的服务器或是要保证相当的安全,你也许应该关掉字体服务fs,也可以关掉系统性能监视器rstatd和tooltalk服务器ttdbserverd。事实上在确实需要安全的机器上你甚至应该注释掉telnet和ftp。

你可以用grep找出机器能过inetd所提供的服务:

grep -v "^#" /etc/inetd.conf

这将返回/etc/inetd.conf中所有没被注释掉的行。

3)在/etc/inetd.conf中做出改变之后,找到inetd进程的id号,用kill向它发送HUP信号来刷新

它。一定要确保kill了inetd进程后,它还在运行,例如:

root@multics: ps -ef | grep inetd

root 196 1 0 15:32:14 ? 0:00 /usr/sbin/inetd -s

root@multics: kill -HUP 196

root@multics: ps -ef | grep inetd

root 196 1 0 15:32:14 ? 0:00 /usr/sbin/inetd -s

#3 给系统打补丁

跟所有的复杂系统一样,SUN有它的漏洞,其中的一些从性质上来说是相当严重的。SUN公司有向

它的客户甚至是没有技术支持的客户提供补丁的优良传统。这些补丁或者以集合包或者以单个补

丁的形式存在的。不幸的是,要完全修补你的系统,既需要大的补丁集合包,又需要单个的补丁。

然而我们将介绍一种把补丁包和单个补丁结合起来使用的方法。

1)变成root

2)键入

umask 022

来设置你的许可模式--给系统打补丁不仅要求所有的补丁被"nobody"用户可读,而且包括补丁之

前的所有目录(不要问为什么,反正是一般这么干的)。

3)创建一个叫“patch“的目录,并进入它,我一般是这样做的:

mkdir /var/tmp/patch

cd /var/tmp/patch

在你建“patch“目录的文件系统中要保证有足够的磁盘空间(提示:你可以试着键入

df -k

来看看文件系统上可用的磁盘空间,不要用/tmp!

4)用ftp连接sunsolve站

ftp sunsolve.sun.com

你的登录用户名是“anonymous“,口令是你的电子邮件地址。

5)转到二进制模式,键入:

bin

关闭提示,键入:

prompt

--你不需要为下载每个补丁回答”是,我需要下那个补“ 。

6)补丁位于sunsolve站的/pub/patches目录,所以键入:

cd /pub/patches

7)得到对应于你操作系统版本的PatchReport文件,你可以用以下命令列出那些文件:

ls *.PatchReport

例如:

-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-

ftp ls *.PatchReport

200 PORT command successful.

150 Opening ASCII mode data connection for file list.

Solaris1.1.1.PatchReport

Solaris1.1.2.PatchReport

Solaris1.1.PatchReport

Solaris2.3.PatchReport

Solaris2.4.PatchReport

Solaris2.4_x86.PatchReport

Solaris2.5.1.PatchReport

Solaris2.5.1_x86.PatchReport

Solaris2.5.PatchReport

Solaris2.5_x86.PatchReport

Solaris2.6.PatchReport

Solaris2.6_x86.PatchReport

Solaris7.PatchReport

Solaris7_x86.PatchReport

226 Transfer complete.

remote: *.PatchReport

360 bytes received in 0.0044 seconds (79.16 Kbytes/s)

-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-

对x86和sparc文件有不同的补丁报告文件,sparc版本的是那些没有“x86“字样的。

8)得到一份补丁报告文件,比如:

get Solaris2.6.PatchReport

9)得到一份对应于你系统版本的推荐补丁集合包和它的README文件,可以用如下命令

列出推荐的文件:

ls *Recommended*

输出可能是这样的:

-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+=-

ftp ls *Recommended*

200 PORT command successful.

150 Opening ASCII mode data connection for file list.

2.3_Recommended.README

2.3_Recommended.tar.Z

2.4_Recommended.README

2.4_Recommended.tar.Z

2.4_x86_Recommended.README

2.4_x86_Recommended.tar.Z

2.5.1_Recommended.README

2.5.1_Recommended.tar.Z

2.5.1_x86_Recommended.README

2.5.1_x86_Recommended.tar.Z

2.5_Recommended.README

2.5_Recommended.tar.Z

2.5_x86_Recommended.README

2.5_x86_Recommended.tar.Z

2.6_Recommended.README

2.6_Recommended.tar.Z

2.6_x86_Recommended.README

2.6_x86_Recommended.tar.Z

7_Recommended.README

7_Recommended.zip

7_x86_Recommended.README

7_x86_Recommended.zip

-=+=-=+=-=+=-=+=-=+=-=+=-=+=-=+

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有