论M 使用安全审计加强Linux主机的安全维护能力bakr.docx

上传人:you****now 文档编号:48271146 上传时间:2022-10-05 格式:DOCX 页数:21 大小:43.84KB
返回 下载 相关 举报
论M 使用安全审计加强Linux主机的安全维护能力bakr.docx_第1页
第1页 / 共21页
论M 使用安全审计加强Linux主机的安全维护能力bakr.docx_第2页
第2页 / 共21页
点击查看更多>>
资源描述

《论M 使用安全审计加强Linux主机的安全维护能力bakr.docx》由会员分享,可在线阅读,更多相关《论M 使用安全审计加强Linux主机的安全维护能力bakr.docx(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、M6-4 使用用安全审计加加强Linux主机的安全全维护能力1.1场景描述述1.1.1 学学习目的学生通过该能力力模块的学习习,能够独立完成成和熟练掌握握实现主机安安全审计的能能力。1.1.2 学学习要求理解:审计对主主机安全的重重要性。掌握:使用pssacct程序所提供供的命令对主主机进行审计计。1.1.3 学学习重点和难难点1.学习重点 ac命令. sa命令2.学习难点 psacct程程序1.2 知识准准备1.2.1 ppsacct程序安全配置审计工工具是一款用用户对各类系系统、设备做做安全配置检检查的自动化化工具,能够够智能化识别别各类安全设设置,分析安安全状态,并并能够给出多多种配置审

2、计计分析报告,目目前已经支持持多种操作系系统及网络设设备。RedHat Linuxx系统中的psaccct程序可以根根据安全需求求进行修改。另另外,利用系系统工具对各各类账号的操操作权限做限限制,能够有有效保证用户户无法超越其其账号权限的的操作,确保保系统安全。RedHat Linuxx系统中的psaccct程序提供了了几个进程活活动监视工具具:ac、lastccomm、accton和sa。 ac命令显显示用户连接接时间的统计计. lastcommm命令显示系系统执行的命命令. accton命令用于打打开或关闭进进程记帐功能能. sa命令统统计系统进程程记帐的情况况.1.3 注意事事项在使用p

3、saccct程序进行审审计时,需要要查看其是否否安装,如果果没有安装要要手动进行安安装。1.4 操作步步骤1.4.1启动动psaccct服务默认情况下,RRedHatt Linuux系统默认安安装了psaccct程序,只需需要系统中启启动psaccct服务,先用chkcoonfig命令查看psaccct服务状态,如如下所示:rootllab2 # chhkconffig -list psaccctpsacct 00:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭使用命令chkkconfiig命令启用默默认启动,并并使用命令/etc/init.d/psaacct sstart命

4、令来启动psaccct服务,如下下所示。rootllab2 # chhkconffig pssacct onrootllab2 # /eetc/innit.d/psaccct staart开启进程记帐: 确定 rootllab2 #1.4.2对网网络行为进行行审计第一步:显示用用户连线时间间的统计信息息可以根据登陆数数/退出数在屏屏幕上打印出出用户的连线线时间(单位为小时)。总计时间间也可以打印印出来,如果果你执行没有有任何参数的的ac命令, 屏幕将会显显示总计的连连线时间。rootllab2 # acc totaal 1022.27显示每一天的连连线统计时间间:rootllab2 # acc

5、 -dJan 12 totaal 233.86Jan 13 totaal 11.17Jan 14 totaal 133.11Jan 15 totaal 66.79Jan 26 totaal 466.37Today totaal 100.97rootllab2 #显示每一个用户户的总计连线线时间和所有有用户总计连连线时间:rootllab2 # acc -p userr1 9.31 userr2 7.622 roott 85.36 totaal 1022.29rootllab2 #第二步:查找用用户过去执行行的命令可以使用lasstcommm命令打印出出用户过去执执行的命令. 你也可以通通过用户

6、名, tty名或命令名名来搜索以往往执行的命令令。比如显示useer1用户过去执执行的命令:rootllab2 # laastcommm useer1bash uuser1 tty11 0.000 seccs Wedd Jan 27 066:24id uuser1 ttty1 00.00 ssecs WWed Jaan 27 06:244bash uuser1 ttty1 00.00 ssecs WWed Jaan 27 06:244id useer1 tty11 0.000 seccs Wedd Jan 27 066:24bash uuser1 ttty1 00.00 ssecs WWed

7、Jaan 27 06:244id useer1 tty11 0.000 seccs Wedd Jan 27 066:24unicodee_starrt useer1 tty11 0.001 seccs Wedd Jan 27 066:24setfontt useer1 tty11 0.004 seccs Wed Jan 227 06:24gzip useer1 tty11 0.000 seccs Wedd Jan 27 066:24loadkeyys useer1 tty11 0.000 seccs Wedd Jan 27 066:24dumpkeyys useer1 tty11 0.000

8、seccs Wedd Jan 27 066:24kbd_modde user1 ttty1 00.00 ssecs WWed Jaan 27 06:244consoleetype useer1 tty11 0.000 seccs Wedd Jan 27 066:24bash useer1 tty11 0.000 seccs Wedd Jan 27 066:24consoleetype useer1 tty11 0.000 seccs Wedd Jan 27 066:24bash useer1 tty11 0.000 seccs Wedd Jan 27 066:24id useer1 tty11

9、 0.000 seccs Wedd Jan 27 066:24grep useer1 tty11 0.000 seccs Wedd Jan 27 066:24bash useer1 tty11 00.00 ssecs WWed Jaan 27 06:244grep useer1 tty11 0.000 seccs Wedd Jan 27 066:24bash useer1 tty11 0.000 seccs Wedd Jan 27 066:24egrep useer1 tty11 0.000 seccs Wedd Jan 27 066:24bash useer1 tty11 0.000 sec

10、cs Wedd Jan 27 066:24dircoloors useer1 tty11 0.000 seccs Wedd Jan 27 066:24bash useer1 tty11 0.000 seccs Wedd Jan 27 066:24hostnamme useer1 tty11 0.000 seccs Wed Jaan 27 06:244bash useer1 tty11 0.000 seccs Wedd Jan 27 066:24id useer1 tty11 0.000 seccs Wedd Jan 27 066:24每一行信息都在在屏幕上打印印出来,以第第一行输出项项为例:l

11、s usser1 ttyy1 0.01 seecs Tuue Jann 12 116:24分析:ls是进程的命命令名user1是执执行命令的用用户名tty1 终端端名0.01 seecs - 进程退出时时间你可以通过执行行下面的命令令来搜索进程程记帐日志,如如下所示:rootllab2 # laastcommm lsls rooot pts/2 0.001 seccs Wedd Jan 27 077:27ls rooot pts/2 0.001 seccs Wedd Jan 27 077:26ls rooot pts/2 0.001 seccs Wedd Jan 27 077:26ls roo

12、ot pts/2 0.001 seccs Wedd Jan 27 077:18ls rooot pts/2 0.001 seccs Wedd Jan 27 066:10ls rooot pts/0 0.001 seccs Wedd Jan 27 066:08ls useer1 pts/0 0.002 seccs Wedd Jan 27 066:05ls useer1 pts/0 0.001 seccs Wedd Jan 27 066:04ls rooot pts/2 0.001 seccs Wedd Jan 27 055:52ls rooot pts/2 0.002 seccs Wedd Ja

13、n 27 055:34ls rooot pts/0 0.001 seccs Wedd Jan 27 055:32ls rooot pts/0 0.002 seccs Wedd Jan 27 055:32ls rooot pts/0 0.002 seccs Wedd Jan 27 055:32ls rooot pts/0 0.004 seccs Wedd Jan 27 055:28第三步:统计记记帐信息可以使用sa命命令打印过去去执行命令的的统计信息。另另外,sa命令保存了了一个叫做savaccct文件,文件件包含了命令令被调用的次次数和资源使使用的次数。而而且sa还提供每一一个用户的统统计信息

14、, 这些信息保保存在一个叫叫做usraccct的文件当中中。rootllab2 # saa 55881 4065.23re 8.811cp 13886k 885 1894.22re 7.633cp 28772k *otther* 3 4.667re 0.23ccp 24355k pprelinnk 3 65.75re 0.133cp 118112k gnomee-termminal 116 0.37re 0.099cp 12110k sort 4 0.32re 0.088cp 19111k rpmq 229 453.61re 0.088cp 15997k bash 2 44.73re 0.05

15、5cp 102442k pythoon2 117 11.27re 0.055cp 26008k vim 8 0.17re 0.055cp 14226k uniq 664 0.09re 0.044cp 14559k sed 3 168.03re 0.044cp 18994k ssshd 27774 0.25re 0.022cp 14006k ld-liinux.sso.2 9 201.32re 0.022cp 7332k loginn 1449 0.20re 0.022cp 12335k grep 223 0.02re 0.011cp 6669k pidoff 2 0.02re 0.01ccp

16、10066k xxkbcommp 117 0.02re 0.011cp 13990k setfoont 2 0.33re 0.011cp 5000k readaahead 4 2.97re 0.011cp 9220k telneetd 2 0.25re 0.011cp 15770k rc 117 105.96re 0.011cp 15667k su 444 14.52re 0.011cp 12117k vsftppd* 3 0.13re 0.011cp 14558k ifup-post 9 6.33re 0.011cp 23337k sendmmail* 2 67.03re 0.011cp 7

17、8884k eggcupss 4 45.49re 0.011cp 34994k consoolehellper-gg以结果输出的第第一行为例:5288 22.55ree 1.115cp 14400k ld-llinux.so.2分析:2.55re 实际时间 单位为分钟.1.15cp系系统和用户时时间总数(CPU时间, 单位为分钟)1400k核心心使用所占的的平均CPU时间, 一个单元的的大小为1Kld-linuux.so.2命令名第四步:查看占占用CPU可以使用sa m命令,如下下所示:rootllab2 # saa -m5584 40655.23ree 8.881cp 13386kroot

18、50211 33827.002re 8.73ccp 14088kuser1 388 8.79rre 0.03cp 11044kgdm 1 0.19re 0.033cp 150998kuser2 122 2.90rre 0.01cp 11087knobody 27 88.00ree 0.001cp 11197ksmmsp 5 12.61re 0.000cp 18008ksshd 3 00.07ree 0.000cp 15549kuser11 11 5.95rre 0.00cp 11218khtt 6 1199.700re 00.00cpp 9635kk可以通过查看rre、k、cp/cppu(见上

19、面输出出解释)时间来找出出可疑的活动动,或某个用用户/命令占用了了所有的CPU时间。 如果CPU/MMemeorry使用数(命令)在不断增加加,可以说明明命令存在问问题。1. 5 拓展展知识1.5.1 TTCPDUMMP详解tcpdumpp是一个用于截截取网络分组组,并输出分分组内容的工工具。tcpduump凭借强大的的功能和灵活活的截取策略略,使其成为为类UNIX系统下用于于网络分析和和问题排查的的首选工具。tcpdumpp提供了源代代码,公开了了接口,因此此具备很强的的可扩展性,对对于网络维护护和入侵者都都是非常有用用的工具。tcpduump存在于基本本的Linux系统中,由由于它需要将将

20、网络界面设设置为混杂模模式,普通用用户不能正常常执行,但具具备root权限的用户户可以直接执执行它来获取取网络上的信信息。因此系系统中存在网网络分析工具具主要不是对对本机安全的的威胁,而是是对网络上的的其他计算机机的安全存在在威胁。 一、概述顾名思思义,tcpduump可以将网络络中传送的数数据包的“头”完全截获下下来提供分析析。它支持针针对网络层、协协议、主机、网网络或端口的的过滤,并提提供and、or、not等逻辑语句句来帮助你去去掉无用的信信息。引用# tcpduump vvtcpdumpp: lissteninng on eth0, linkk-typee EN100MB (EEthe

21、rnnet), captuure siize 966 bytees11:53:221.4444591 IIP (toos 0x110, tttl 64, id 119324, offsset 0, flaggs DFF, prroto 66, lenngth: 92) aasptesst.loccaldommain.sssh 192.1168.2228.2444.18588: P 339621332600:396211326522(52) ack 227265225936 win 11266asptestt.locaaldomaain.10077 192.1168.2228.1533.doma

22、ain: bad uudp ckksum 1166e! 325+ PTR? 244.228.1168.1992.in-addr.arpa. (46)11:53:221.4466929 IIP (toos 0x00, ttll 64, id 422911, offseet 0, flagss DF, prooto 177, lenngth: 151) 192.1168.2228.1533.domaain aspteest.loocaldoomain.1077: 325 NXDommain qq: PTRR? 2444.228.168.1192.inn-addrr.arpaa. 0/11/0 ns

23、s: 1688.192.in-adddr.arrpa. (123)11:53:221.4477408 IIP (toos 0x110, tttl 64, id 119328, offsset 0, flaggs DFF, prroto 66, lenngth: 172) aspteest.loocaldoomain.ssh 192.168.2228.2444.18558: P 168:3300(1332) acck 1 wwin 12266347 pacckets captuured1474 paacketss receeived by fiilter745 pacckets droppped

24、 byy kernnel不带参数的tccpdumpp会收集网络络中所有的信信息包头,数数据量巨大,必必须过滤。二、选项介绍引用-A 以ASCCII格式打印出出所有分组,并并将链路层的的头最小化。-c 在收到指指定的数量的的分组后,tcpduump就会停止。 -C 在将一个个原始分组写写入文件之前前,检查文件件当前的大小小是否超过了了参数file_size 中指定的大大小。如果超超过了指定大大小,则关闭闭当前文件,然然后在打开一一个新的文件件。参数 filee_sizee 的单位是兆兆字节(是1,0000,000字节,而不不是1,0488,576字节)。-d 将匹配信信息包的代码码以人们能够够理

25、解的汇编编格式给出。-dd 将匹配配信息包的代代码以c语言程序段段的格式给出出。-ddd 将匹匹配信息包的的代码以十进进制的形式给给出。-D 打印出系系统中所有可可以用tcpduump截包的网络络接口。-e 在输出行行打印出数据据链路层的头头部信息。-E 用spiiipadddr allgo:seecret解密那些以addr作为地址,并并且包含了安安全参数索引引值spi的IPsecc ESP分组。 -f 将外部的的Interrnet地址以数字字的形式打印印出来。-F 从指定的的文件中读取取表达式,忽忽略命令行中中给出的表达达式。-i 指定监听听的网络接口口。-l 使标准输输出变为缓冲冲行形式,

26、可可以把数据导导出到文件。-L 列出网络络接口的已知知数据链路。-m 从文件mmodulee中导入SMI MMIB模块定义。该该参数可以被被使用多次,以以导入多个MIB模块。-M 如果tccp报文中存在TCP-MMD5选项,则需需要用secreet作为共享的的验证码用于于验证TCP-MMD5选选项摘要要(详情可参参考RFC 22385)。-b 在数据-链路层上选选择协议,包包括ip、arp、rarp、ipx都是这一层层的。-n 不把网络络地址转换成成名字。-nn 不进行行端口名称的的转换。-N 不输出主主机名中的域域名部分。例例如,nic.dddn.miil只输出nic。-t 在输出的的每一行

27、不打打印时间戳。-O 不运行分分组分组匹配配(packeet-mattchingg)代码优化化程序。-P 不将网络络接口设置成成混杂模式。-q 快速输出出。只输出较较少的协议信信息。-r 从指定的的文件中读取取包(这些包一般般通过-w选项产生)。-S 将tcpp的序列号以以绝对值形式式输出,而不不是相对值。-s 从每个分分组中读取最最开始的snapllen个字节,而而不是默认的的68个字节。-T 将监听到到的包直接解解释为指定的的类型的报文文,常见的类类型有rpc远程过程调调用)和snmp(简单网络络管理协议;)。 -t 不在每一一行中输出时时间戳。 -tt 在每一一行中输出非非格式化的时时间

28、戳。-ttt 输出出本行和前面面一行之间的的时间差。-tttt 在在每一行中输输出由date处理的默认认格式的时间间戳。-u 输出未解解码的NFS句柄。-v 输出一个个稍微详细的的信息,例如如在ip包中可以包包括ttl和服务类型型的信息。 -vv 输出详详细的报文信信息。-w 直接将分分组写入文件件中,而不是是不分析并打打印出来。三、tcpduump的表达式介介绍表达式是一个正正则表达式,tcpduump利用它作为为过滤报文的的条件,如果果一个报文满满足表 达式的条件件,则这个报报文将会被捕捕获。如果没没有给出任何何条件,则网网络上所有的的信息包 将会被截获获。在表达式中一般般如下几种类类型的

29、关键字字: 引用第一种是关于类类型的关键字字,主要包括 host,net,port,例如 hostt 210.27.488.2, 指明 210.27.488.2是一台主机机,net 2202.0.0.0指明202.00.0.0是一个网络络地址,port 23 指明端口号号是23。如果没有有指定类型,缺缺省的类型是是host。第二种是确定传传输方向的关关键字,主要要包括src,dst,dst oor srcc,dst aand srrc, 这些关键字字指明了传输输的方向。举举例说明,src 2210.277.48.22 ,指明ip包中源地址址是 210.27.488.2 , dst net 22

30、02.0.0.0 指明目的网网络地址是202.00.0.0。如果没有有指明 方向关键字字,则缺省是是src oor dstt关键字。第三种是协议的的关键字,主主要包括fddi,ip,arp,rarp,tcp,udp等类型。Fddi指明是在FDDI (分布式光纤纤数据接口网网络)上的特定的的网络协议,实实际上它是”ether”的别名,fddi和etherr 具有类似的的源地址和目目的地址,所所以可以将fddi协议包当作ether的包进行处处理和分析。 其他的几个个关键字就是是指明了监听听的包的协议议内容。如果果没有指定任任何协议,则则tcpduump 将会 监听所有协协议的信息包包。除了这三种类

31、型型的关键字之之外,其他重重要的关键字字如下:gatewway, broaadcastt,less, greaater, 还有三种逻逻辑运算,取取非运算是 not ! , 与运算是and,&;或运算是or ,Ӝӈ; 这些关键字可可以组合起来来构成强大的的组合条件来来满足人们的的需要。四、输出结果介介绍下面我们介绍几几种典型的tcpduump命令的输出信信息 (1) 数据链链路层头信息息使用命令: #tcpdummp -ee hostt ICEICE 是一台台装有linux的主机。它它的MAC地址是0:90:27:58:AF:1A H2219是一台装有Solarris的S

32、UN工作站。它它的MAC地址是8:0:20:79:5B:46; 上一条命令令的输出结果果如下所示:引用21:50:112.8477509 eeth0 IICE. ttelne t 0:00(0) aack 222535 wwin 87760 (DDF)21:50:112是显示的时时间, 8475509是ID号,eth0 表示从网络络接口设备发发送分组, 8:0:20:799:5b:446是主机H219的MAC地址, 它表明是从从源地址H219发来的分组. 0:990:27:58:aff:1a是主机ICE的MAC地址, 表示该分组组的目的地址址是ICE。 ip 是表明该分组组是IP分组,60 是

33、分组的长长度, h2199.333557 IICE. ttelnett 表明该分组组是从主机H219的33357端口发往主主机ICE的 TELNNET(233)端口。 ack 225355 表明对序列列号是2225335的包进行响响应。 win 88760表明发 送窗口的大大小是8760。(2) ARPP包的tcpduump输出信息使用命令: #tcpdummp arpp得到的输出结果果是:引用22:32:442.8022509 eeth0 arp who-hhas rooute ttell IICE (00:90:227:58:af:1aa)22:32:442.8022902 eeth0 表

34、明从主机机发出该分组组,arp表明是ARP请求包, who-has rroute tell ICE表明是主机ICE请求主机route的MAC地址。 0:900:27:558:af:1a是主机 ICE的MAC地址。(3) TCPP包的输出信信息用tcpdummp捕获的TCP包的一一般输出信息息是: 引用src ddst: fflags data-seqnoo ack windoow urggent ooptionnssrc ddst:表明从源地地址到目的地地址, flaggs是TCP报文中的标标志信息,S 是SYN标志, F (FIIN), P (PPUSH) , R (RRST) . (没有标

35、记); daata-seeqno是报文中的的数据 的顺序号, ack是下次期望望的顺序号, winddow是接收缓存存的窗口大小小, urgeent表明 报文中是否否有紧急指针针。 Optiions是选项。(4) UDPP包的输出信信息用tcpduump捕获的UDP包的一般输输出信息是: 引用route.pport1 ICEE.portt2: uddp lennthUDP十分简单单,上面的输输出行表明从从主机route的port1端口发出的的一个UDP报文 到主机ICE的port2端口,类型型是UDP, 包的长度是lenth。五、举例(1) 想要截截获所有210.227.48.1 的主机收到到

36、的和发出的的所有的分组组: #tcpdummp hosst 2100.27.448.1(2) 想要截截获主机210.227.48.1 和主机210.227.48.2或210.227.48.3的通信,使使用命令(注注意:括号前前的反斜杠是是必须的): #tcpdummp hosst 2100.27.448.1 aand (210.227.48.2 or 210.227.48.3 )(3) 如果想想要获取主机机210.227.48.1除了和主机210.227.48.2之外所有主主机通信的ip包,使用命命令: #tcpdummp ip host 210.227.48.1 andd ! 2110.27.48.2(4) 如果想想要获取主机机192.1168.2228.2466接收或发出出的ssh包,并且不不转换主机名名使用如下命命令: #tcpdummp -nnn -n ssrc hoost 1992.1688.228.246 aand poort 222 and tcp(5) 获取主主机192.1168.2228.2466接收或发出出的ssh包,并把mac地址也一同同显示:# tcpduump -ee src host 192.1168.2228.2466 and port 22 annd tcpp -n nn(6) 过滤的的是源主机为为192.1168.0.1与目的网

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 管理文献 > 其他资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁