网络安全实验心得一实验名称系统主机加固二实验目的熟悉windows操作系统的漏洞扫描工具了解Linux操作系统的安全操作三实验步骤Windows主机加固一.漏洞扫描及测试2.漏洞测试(1)主机A建立ipc$空连接net use \\100.10.1.2\ipc$“” /user:””(2)主机A通过NetBIOS获得主机B信息主机A在命令行下执行如下命令:nbtstat –A 100.10.1.2获得主机B的信息包括:主机名:HOST7D MAC地址:00-0C-29-31-8D-8F (3)主机A通过telnet远程登录主机B主机A在命令行下执行如下命令:telnet 100.10.1.2输入“n”|“Enter”,利用扫描到的弱口令用户,登录主机B。
在主机B的D盘下新建名称为“jlcss”的文件夹,命令为d: 和mkdir jlcss主机B查看D盘出现了名为“jlcss”的文件夹,文件夹创建时间为2016-5-16 9:30 (4)主机A通过ftp访问主机B主机A打开IE浏览器,在地址栏中输入“ftp://主机B的IP地址”,可以访问二.安全加固实施1.分析检测报告2.关闭ipc$空连接主机A建立ipc$空连接,命令如下:net use \\100.10.1.2\ipc$“” /user:””出现提示:命令成功完成3.禁用NetBIOS主机A通过NetBIOS获取主机B信息,在命令行下执行如下命令:nbtstat –A 100.10.1.2出现提示:Host not found4.关闭445端口(1)验证445端口是否开启主机B在命令行中输入如下命令:netstat -an查看到445端口处于Listening:(2)若主机不需要文件共享服务,可以通过修改注册表来屏蔽445端口主机B执行如下命令:netstat -an此时445端口未开启5.禁止Telnet服务。
主机A重新telnet 主机B,出现提示6.禁止ftp服务主机B查看21端口是否关闭,在命令行下执行如下命令: netstat –an主机B的21端口已关闭主机A通过ftp访问主机B 提示无法与服务器建立连接7.修改存在弱口令账号:net user test jlcssadmin三.加固测试(1)主机A使用X-Scan再次对主机B进行扫描,根据本次检测报告,对比第一次生成的Linux主机加固一.使用xinetd实施主机访问控制1.telnet服务的参数配置(1)telnet远程登录同组主机(用户名guest,口令guestpass),确定登录成功。
(2)查看本机网络监听状态,输入命令netstat -natp。
回答下列问题:telnet监听端口:23telnet服务守护进程名:xinetd(3)使用vim编辑器打开/etc/xinetd.d/telnet文件,解释telnet服务配置项,并填写表12-2-3。
(4)修改telnet配置项,禁止同组主机访问本机telnet服务。
在service telnet中追加配置项no_access,拒绝同组主机访问服务。
修改配置后,重新启动xinetd服务使修改生效。
重启命令为:service xinetd restart(5)同组主机再次对当前主机进行telnet远程登录,不成功,因为配置中拒绝了同组主机IP进行连接(6)注释掉no_access项,追加配置项per_source,限制同组主机对当前主机telnet访问实例上限为2。
记录追加的配置项重启xinetd服务。
(7)同组主机打开3个控制台,依次对当前主机进行telnet远程登录,登录成功次数为2 此时当前主机修改per_source值为3,并重启xinetd服务。
同组主机可以成功登录(8)注释掉per_source项。
禁止系统提供telnet服务重启xinetd服务。
同组主机继续尝试登录,不能登录二.使用TCP Wrappers实施主机访问控制(1)编辑/etc/hosts.deny,添加规则,内容如下:(2)同组主机尝试远程登录、FTP登录当前主机。
无法远程登录,无法FTP登录(3)同实验组其它主机远程登录、FTP登录当前主机。
可以远程登录,可以FTP登录(4)使用通配符ALL,限制所有主机访问任意服务。
添加规则内容为请同实验组其它主机再次登录当前主机,无法远程登录,无法FTP登录(5)编辑/etc/hosts.allow,添加规则,允许同组主机访问FTP和telnet服务。
规则内容为(6)注销或删除hosts.allow文件中in.telnetd规则项。
在hosts.deny文件规则尾追加shell 命令,为限制访问增加日志功能,格式如下:请同组主机尝试telnet远程登录当前主机。
无法远程登录请详细写出/var/log/tcp-wrappers日志中的信息格式:三.使用SSH安全通信1.telnet登录的不安全性验证(1)对网络进行网络监听(2)同组主机telnet远程登录当前主机(用户名guest,口令guestpass)。
观察Snort捕获数据,判断主机间是否为明文传输捕获到telnet登录口令guestpass2.FTP传输的不安全性验证(1)当前主机(FTP服务器)创建文件/home/guest/ffile(命令touch /home/guest/ffile),编辑文件输入明文内容。
记录输入的明文内容123456789(2)启动Snort监听捕获源IP地址为本机或同组主机的网络数据包。
(3)同组主机启动FTP客户端登录FTP服务器(4)键入Ctrl+C停止Snort监听,观察捕获信息(TCP负载数据),会有类似如图12-2-1所示信息。
由步骤1、2可以得出结论,传统方式的telnet和FTP传输是不安全的。
SELinux一.增强Apache服务安全(1)在/opt目录下新建目录virdir。
mkdir /opt/virdir(2)编辑http服务配置文件/etc/httpd/conf/httpd.conf,在末尾追加如下内容:保存文件,重新启动httpd服务。
虚拟目录virdir被创建完成。
service httpd restart(3)在虚拟目录中创建test.php文件,完成功能是读取虚拟目录文件test.txt(,若读取成功向test.txt文件中写入信息:Hello World!代码编写完成后,请同实验组主机访问当前主机test.php,如http://当前主机IP/virdir/test.php。
页面访问信息为open file failed查看日志文件/var/log/httpd/error_log,分析产生该结果的原因:apache没有执行test.php的权限(4)改变虚拟目录(包括目录内文件)的所有者和属组为apache。
chown apache virdirchgrp apache virdir请同实验组主机再次访问当前主机test.php。
页面访问信息为write file success!(5)查看虚拟目录安全上下文Sorry, --context (-Z) can be used only on a selinux-enabled kernel(6)开启SELinux,工作模式:enforcing,策略类型:targeted。
在文件/etc/selinux/config中添加SELINUX=enforcingSELINUXTYPE=targeted重启系统。
(7)请同实验组主机访问当前主机test.php。
页面访问信息为write file success!Linux安全审计一.查看连接时间日志连接时间日志是保持用户登录进入和退出时间的文件。
1. 查看系统已登录用户(使用工具查看/var/run/utmp日志)(1)进入实验平台,单击工具栏“控制台”按钮进入工作目录。
输入命令:w,查看系统已登录用户。
(2)同组主机telnet登录本机(用户名:guest;口令:guestpass),本机再次通过w命令查看系统已登录用户。
2. 查看登录用户历史(使用工具查看/var/log/wtmp日志)(1)在控制台中输入命令:last,查看近期用户或终端的登录情况。
显示信息如图12-2-4所示。
显示信息中包括用户登录时间。
如果关心某一个用户的登录历史,可以在“last”命令后面加上用户名参数,上例中使用“last root”命令就会得到关于用户root的登录信息。
(2)在控制台输入命令:last -n 5,能够得到最近5个用户的登录历史。
3. 查看用户的上一次登录历史(使用工具查看/var/log/lastlog日志)在控制台输入命令:lastlog,查看所有用户的最近登录情况4.查看当前用户使用过的命令(查看bash_history)(1)在控制台中输入命令:touch new-file.txt,新建文件new-file.txt。
(2)关闭当前控制台,重新打开一新控制台,进入当前用户主目录,而后继续输入命令:cat .bash_history,查看当前用户使用过的命令。
二.查看系统服务日志1. http日志查看(查看/var/log/httpd/目录下日志)(1)首先进入http服务日志所在目录/var/log/httpd/,若日志文件access_log存在,将其内容清空,可通过命令:echo "" >/var/log/httpd/access_log实现。
(2)请同组主机访问本机Web服务。
(3)本机再次查看access_log日志内容。
2. ftp日志查看(查看/var/log/xferlog日志),同组主机访问本机FTP服务,查看xferlog日志内容。
三.文件完整性检查对Linux文件系统中的任何文件进行完整性检查,以此确定文件是否被更改过。
这里我们以用户口令文件/etc/passwd为例,通过系统工具md5sum来实现对该文件的完整性检查。
(1)使用md5sum对/etc/passwd文件生成摘要,具体命令如下:md5sum /etc/passwd > md5result,其中md5result为自定义的文件名。
(2)在passwd未做任何变动的情况下,对该文件进行完整性检查,具体命令如下:md5sum -c md5result,其中参数-c md5result表示从md5result文件中读取源文件摘要,并进行文件完整性检查。
若passwd文件无变动(生成摘要到当前时间段内),则会出现“passwd: OK”的信息提示。
(3)使用vim编辑器编辑/etc/passwd,对文件进行任意改动,存盘退出(先按esc键,接着键入“:wq”回车)。