统.此外,还应查看root进程,除了系统管理员用su命令从终端进入root,系统
启动,系统停止时间,以及由init(通常init只启动getty,login,登录shell),
cron启动的进程和具有root SUID许可的命令外,不应当有任何root进程.
由记帐系统也可获得有关每个用户的CPU利用率,运行的进程数等统计数
据.
(2)其它检查命令
*du:报告在层次目录结构(当前工作目录或指定目录起)中各目录占用的
磁盘块数.可用于检查用户对文件系统的使用情况.
*df:报告整个文件系统当前的空间使用情况.可用于合理调整磁盘空间的
使用和管理.
*ps:检查当前系统中正在运行的所有进程.对于用了大量CPU时间的进程,
同时运行了许多进程的用户,运行了很长时间但用了很少CPU时间的
用户进程应当深入检查.还可以查出运行了一个无限制循环的后台进
程的用户,未注销户头就关终端的用户(一般发生在直接连线的终端).
*who:可以告诉系统管理员系统中工作的进展情况等等许多信息,检查用
户的登录时间,登录终端.
*su:每当用户试图使用su命令进入系统用户时,命令将在/usr/adm/sulog
文件中写一条信息,若该文件记录了大量试图用su进入root的无效操
作信息,则表明了可能有人企图破译root口令.
*login:在一些系统中,login程序记录了无效的登录企图(若本系统的
login程序不做这项工作而系统中有login源程序,则应修改login).
每天总有少量的无效登录,若无效登录的次数突然增加了两倍,则表
明可能有人企图通过猜测登录名和口令,非法进入系统.
这里最重要的一点是:系统管理没越熟悉自己的用户和用户的工作习惯,
就越能快速发现系统中任何不寻常的事件,而不寻常的事件意味着系统已被人
窃密.
(3)安全检查程序的问题
关于以上的检查方法的一个警告,若有诱骗,则这些方法中没有几个能防
诱骗.如find命令,如果碰到路径名长于256个字符的文件或含有多于200个文
件的目录,将放弃处理该文件或目录,用户就有可能利用建立多层目录结构或
大目录隐藏SUID程序,使其逃避检查(但find命令会给出一个错误信息,系统管
理员应手工检查这些目录和文件).也可用ncheck命令搜索文件系统,但它没有
find命令指定搜索哪种文件的功能.
如果定期存取.profile文件,则检查久未登录用户的方法就不奏效了.而
用户用su命令时,除非用参数-,否则su不读用户的.profile.
有三种方法可寻找久未登录的帐户:
. UNIX记帐系统在文件/usr/adm/acct/sum/login中为每个用户保留了最
后一次登录日期.用这个文件的好处是,该文件由系统维护,所以可完全
肯定登录日期是准确的.缺点是必须在系统上运行记帐程序以更新
loginlog文件,如果在清晨(午夜后)运行记帐程序,一天的登录日期可
能就被清除了.
. /etc/passwd文件中的口令时效域将能告诉系统管理员,用户的口令是
否过期了,若过期,则意味着自过期以来,户头再未被用过.这一方法的
好处在于系统记录了久未用的户头,检查过程简单,且不需要记帐系统
所需要的磁盘资源,缺点是也许系统管理员不想在系统上设置口令时效,
而且这一方法仅在口令的最大有效期(只有几周)才是准确的.
. 系统管理员可以写一个程序,每天(和重新引导系统时)扫描/etc/wtmp,
自己保留下用户最后登录时间记录,这一方法的好处是不需要记帐程序,
并且时间准确,缺点是要自己写程序.
以上任何方法都可和/usr/adm/sulog文件结合起来,查出由login或su登
录户头的最后登录时间.
如果有人存心破坏系统安全,第一件要做的事就是寻找检查程序.破坏者
推荐阅读
- win10系统中电脑关机无反应具体处理步骤
- SCO UNIX 根文件系统的清理
- Unix系统中按需定制用户工作环境
- UNIX常用的系统调用
- Win10系统中浏览器提示已完毕但网页上有错误具体处理步骤
- win7系统中调节壁纸大小具体操作方法
- 程序员安全
- 5g信号塔辐射安全距离是多少
- 网络安全
- 如何完成UNIX系统中大批量数据的自动备份
