实验--系统命令、IPC$、服务及端口的管理

时间:2024.4.14

实验一  系统命令、IPC$、服务及端口的管理

实验 1熟悉常见的系统命令

【实验目的】

掌握常见的系统命令使用方法。

【实验准备】

1. 有网络连接的 PC 一台。

2. 安装有 TCP/iP 协议的网络操作系统。

【注意事项】

1. 了解用于作为实验对象的域名或 IP 地址。

2. 老师指导事先准备测试用的系统、 FTP 、Telnet帐户。

【实验步骤】

1. 在 WindowsNT/2000/2003 或 Windows XP 系统 , 从开始菜单里选择”运行 ”, 在” 运行” 窗口的

  “打开 ”栏输入”CMD”, 进入命令行环境。

2. 在 CMD 环境下依次测试以下命令。

1)ping 命令

它是用来检查网络是否通畅或者网络连接速度的命令。它所利用的原理是这样的 : 网路上的机器都 有唯一确定的 iP 地址 , 我们给自标 lP 地址发送一个数据包 , 对方就要返回一个同样大小的数据包 , 根 据返回的数据包我们可以确定目标主丰凡的存在 , 可以初步判断目标主机的操作系统等。

在 CMD 下面输入 c:\ping /h即可得到 ping 的命令介绍 , 其他命令通过在命令名称后空格加 “/h”, 也可得 到相关使用帮助。

-t 表示将不间断向目标 lP 发送数据包 , 直到我们强迫其停止     (Ctrl+C 进行终止 ) 。

-l 定义发送数据包的大小 , 默认为 32 字节 , 我们利用它可以最大定义到 65500 字节。

-n 定义向目标 IP 发送数据包的次数 , 默认为 3 次。如果网络速度比较慢 , 定义 1次即可。

这里 time=175 表示从发出数据包到接收到返回数据包所用的时间是 175 毫秒 , 从这里可以判断网络连接速度的大小。从TTL 的返回值可以初步判断被 ping 主机的操作系统 , 之所以说 “ 初步判断” 是因为这个值是可以修改的。这里 TTL=46 表示操作系统可能是非 Windows 系统。( 小知识 : 如果TTL=128, 则表示目标主机可能是 Win2000: 如果 TTL=250,则目标主机可能是 Unix) 通常利用 ping 命令可以快速查找网络故障 , 可以快速判断服务器连接速度。如果目标服务器安全防护性能差且出口带宽窄 , 也可能被攻击者通过 ping 进行攻击。

2)nbtstat 命令

该命令使用 TCP/IP 上的 NETBIOS 显示协议统计和当前 TCP/IP 连接 , 使用这个命令你可以得到远程主机的 NETBIOS 信息 , 比如用户名、所属的工作组、网卡的 MAC 地址等。在此我们就有必要了解凡个基本的参数。

进行实验前 , 需要在 “本地连接”属性里 “安装”, 选择 “协议”, 确保安装了以下选项:

NwLink IPX/SPX/NetBIOS Compatibie Transpor

-a 使用这个参数 , 只要你知道了远程主机的机器名称 , 就可以得到它的 NETBIOS 信息。

-A 这个参数也可以得到远程主机的 NETBIOS 信息 ,但需要你知道它的IP 。

-n 列出本地机器的 NETBlOS 信息。

攻击者当得到了对方的 iP 或者机器名的时候 , 就可以使用 nbtstat 命令来进一步得到对方的信息了 , 增加了攻击者入侵的成功系数。

3)netstat 命令

这是一个用来查看网络状态的命令 , 操作简便,功能强大。

-a 查看本地机器的所有开放端口 , 通过端口可以了解本地开放服务,也可以有效发现和预防木马 , 可以知道机器所开的服务等信息 , 如下图 :

这里可以看出本地机器开放有 FTP 服务、 Telnet 服务、邮件服务、 WEB 服务等。用法 :netstat –a 。- r 列出当前的路由信息 , 告诉我们本地机器的网关、子网掩码等信息。用法 :netstat -r

4)tracert 命令

跟踪路由信息 , 使用此命令可以查出数据从本地机器传输到目标主机研经过的所有途径 , 这对我们了解网络布局和结构很有帮助。

(图)

这里说明数据从本地机器传输到 192.168.1.1 的机器上 , 中间没有经过任何中转 , 说明这两台机器是在同一段局域网内。用法 :tracert IP

5)net 命令

这个命令是网络命令中最重要的一个 , 必须透彻掌握它的每一个子命令的用法 , 首先让我们来看一看它都有哪些子命令 , 键入 net/h 回车。

6)net view

使用此命令查看远程主机的所以共享资源。命令格式为 net view\\lp 。

7)net use

C:\Net use\\ 192.168.1.99\ipc$"pass"/user:"admin"

C:\Net use z: \\ 192.168.1.99\ C$"aaa"/user:"bbb"

上面第一个命令表示与192.168.1.99 建立一个 IPC$ 连接 , 第二个表示将 192.168.199 的 C 盘影射成本机的 Z:\盘。

建立了IPC$ 连接并且影射后 , 就可以从本地机向目标机器拷贝文件了:copy

c: \test-exe z:\hack.exe

表示把本地目录下的 test.exe 传到远程主机并命名成 hack.exe

8)net start

使用它来启动主机上的服务。当你和远程主机建立连接并且取得 Shell 后 , 如果发现它的相关服务没有启动 , 而你又想利用此服务就可以考虑使用此方法了。用法 :net start servername, 如 net start Schedule 表示启动计划任务。

9)net stop

如果希望停掉某个服务 , 使用 net stop servername 即可 , 例如停掉 telnet 服务 ,net stop telnet

10)net user

查看和账户有关的情况 , 包括新建胀户、删除账户、查看特定账户、激活账户、账户禁用等。键入不带参数的 net user, 可以查看所有用户 , 包括已经禁用的。下面分别介绍。

1.net user abcd 1234/add, 新建一个用户名为 abed, 密码为 1234 的账户 , 默认为 user 组成员。

2.net user abcd /del, 将用户名为 abcd 的用户删除。

3.net user abcd /active;no, 将用户名为 abcd 的用户禁用。

4.net user abed /active:yes, 激活用户名为 abcd 的用户。

5.net user abcd, 查看用户名为 abed 的用户的情况。

net localgroup 查看所有和用户姐有关的信息和进行相关操作。

11 )net time

这个命令可以查看远程主机当前的时间。用法: net time\\IP, 可以与 Windows 的计划任务命令配合启动某个计划任务。

12)at

这个命令的作用是安排在特定日期或时间执行某个特定的命令和程序 ( 需要 Schedule 是启动状态下 ) 。 当我们知道了远程主机的当前时间 , 就可以利用此命令让其在以后的某个时间 ( 比如 2 分钟后 ) 执行某 个程序和命令。用法 :at time command \\ computer 。

13)ftp

ftp 是用来与服务器之间进行文件传输的协议 , 网络上很多服务器都提供ftp 服务。

在命令行键入 ftp 回车 , 出现ftp 的提示符 , 这时候可以键入 "help" 来查看帮助 , 我们了解几个简单的命令。

先是登陆过程 , 这就要用到 open 了 , 直接在ftp 的提示符下输入 "open 主机 iP ftp 端口 " 回车即可 , 一般ftp 端口默认都是 21, 可以不写。接着就是输入合法的用户名和密码进行登陆了 , 这里以匿名 ftp 为例介绍。 用户名和密码都是 ftp, 密码是不显示的。当提示 **** logged in 时 , 就说明登陆成功。这里因为是医名登陆 , 所以用户显示为 Anonymous 。

接下来就要介绍具体命令的使用方法了。

Dir 跟DOS 命令一样 , 用于查看服务器的文件 , 直接敲上 dir 回车 , 就可以看到此ftp 服务器上的文件。

cd 进入某个文件夹。

get 下载文件到本地机器。

put 上传文件到远程服务器。这就要看远程ftp 服务器是否给了你可写的权限了 , 如果可以 , 就可以进行文件上传。

delete 删除远程 ftp 服务器上的文件。这也必须保证你有可写的权限。

bye 退出当前连接。

quit 同上。

14)telnet

远程登陆命令 , 它操作简单 , 熟悉命令行操作 , 登陆后如同使用自己的机器一样 , 下面介绍一下使用方法 , 首先键入 telnet 回车 , 再键入 help 查看其帮助信息。

然后在提示符下键入 open IP 回车 , 这时就出现了登陆窗口 , 让你输入合法的用户名和密码 , 这里输入任何密码都是不显示的。

当输入用户名和密码都正确后就成功建立了 telnet 连接 , 这时候你就在远程主机上具有了和此用户一样的权限。

【实验结果】

要求 : 保证每个命令都能执行成功。


实验 2 防范 IPC$ 攻击

【实验目的】

空会话通常会为黑客成功入侵提供跳板 , 如提供远程主机时间、用户列表等 , 大大增加了黑客入侵的成功机会。

我们通过实验 , 来限制 IPC$ 连接 , 增加主机的安全性。

【实验准备】

IPC 连接是 Windows NT 及以上系统中特有的功能 , 由于其需要用到 Windows NT 中很多 DLL 函数 , 所以实验机器系统必须是 Windows NT 内核版本如 XP/20OO/2003 等。

【注意事项】

IPC$ 所使用的端口

首先我们来了解一些基础知识 :

1.SMB:(Server Message Biock)Windows 协议族 , 用于文件打印共享的服务 :

2.NBT:(NETBIOS Over TCP/IP) 使用 137(UDP)138(UDP)139(TCP) 端口实现基于 TCP/IP 协议的 NETBlOS 网络互联。

3.在 WindowsNT 中 SMB 基于 NBT 实现 , 即使用 139(TCP) 端口 : 而在 Windows2000 中 ,SMB 除了基于 NBT 实现 , 还可以直接通过 445 端口实现。

有了这些基础知识 , 我们就可以进一步来讨论访问网络共辜对端口的选择了:

对于 win2000 客户端( 发起端 ) 来说 :

1. 如果在允许 NBT的情况下连接服务器时 , 客户端会闰时尝试访问 139 和 445 端口 , 如果 445 端口有响应 , 那么就发送 RST 包给 139 端口断开连接 , 用 455 端口进行会话 , 当 445 端口无晌应时 , 才使用 139 端口 , 如果两个端口都没带晌应复则会话失败 :

2. 如果在禁止 NBT 的情况下连接服务器时 , 那么客户端只会尝试访问 445 端口 , 如果 445 端口无响应 , 那么会话失败。

对于 win2000 服务器端来说 :

1. 如果允许 NBT, 那么 UDP 端口 137, 138,TCP 端口 139,445 将开放〈 LISTENING 〉 :

2. 如果禁止 NBT, 那么只有 445 端口开放。

我们建立的 ipc$ 会话对端口的选择同样遵循以上原则 c 显而易见 , 如果远程服务器没有打开 139 或 445 端口 ,ipc$ 会话是无法建立的。

【实验步骤】

1 、禁止空连接进行枚举 ( 此操作并不能阻止空连接的建立 )

运行 regedit, 找到如下主键

[HKEY-LOCAL-MACHINE\SYSTEM\ CurrentControlset\Control\LSA] 把 Restrict \ Anonymous=DWORD 的键值改为 : 1

如果设置为 "1", 一个匿各用户仍然可以连接到 ipc$ 共享 , 但无法通过这种连接得到列举 SAM 帐号 和共享信息的权限;在 Windows2800 中增加了 “2” , 未取得匿各权的用户将不能进行 ipc$ 空连接。 建议设置为 1 。如果上面所说的主键不存在 , 就新建一个再改键值。如果你觉得改注册表麻烦 , 可以在本地安全设置中设置此项 ;在本地安全设童一本地策略一安全选项一‘设置对匿名连接的额外限制 ’。

2 、禁止默认共享

1) 察看本地共享资源

运行 cmd 输入 net share

2) 删除共享 ( 重起后默认共享仍然存在 )

net share ipc$/delete

net share admin$/delete

net share c$/delete

net share d$/delete ( 如果有 e,f,……可以继续删除 )

3) 停止 seNer 服务

net stop server /y( 重新启动后 server 服务会重新开启 )

4) 禁止自动打开默认共享 ( 此操作并不能关闭 ipc$ 共享〉

运行 regedit

Windows2000 sewer 版 : 找到如下主键

[HKEY-LOCAL-MACHINE\SYSTEM\ CurrentControlset\servicesLanrnan\ Server\ Parameters] 把 AutoShareServer(DWORD 〉的键值改为 :000000000

Windows2000 pro 版 : 找到如下主键

[HKEY-LOCAL-MACHINE\SYSTEM\ CurrentControlset\servicesLanrnan\ Server\ Parameters] 把 AutoShareWks(DWORD 〉的键值改为 :000000000

这两个键值在默认情况下在主机上是不存在的 , 需要自己手动添加 , 修改后重启机器使设置生效。

3 、关闭 ipc$ 和默认共享依赖的服务 ;server 服务

如果你真的想关闭 ipc$ 共享 , 禁止 server 服务 ( 非停止 ) 是最好的选择。

控制面板-管理工具-服务-找到 server 服务 ( 右击 ) –属性-常规-启动类型-选已禁用 , 这时可能会有提示说 : XXX 服务也会关闭是否继续 , 因为还有些次要的服务要依赖于 server 服务 , 不要管它 。

4 、屏蔽 139,445 端口

由于没有以上两个端口的支持 , 是无法建立 ipc$ 的 , 因此屏蔽139,445 端口同样可以阻止 ipc$ 入侵。

1)139 端口可以通过禁止NBT来屏蔽

本地连接一 TCP/IP属性一高级 -WINS 一选‘察用了 CP/lP 上的 NETBIOS' 一项

2)445 端口可以通过修改注册表来屏蔽

添加一个键值

Hive:HKEY_LOCAL_MACHINE

Key:SystemControlsetservicesNetBTParameters

Name:SMBDeviceEnabled

Type:REG_DWORD

Vaiue:0

修改完后重启机器

注意 : 如果屏蔽掉了以上两个端口 , 你将无法用 ipc$ 连接到的服务器。

3) 安装防火墙进行端口过滤

4) 设置复杂密码 , 防止通过 ipc$ 穷举出密码 , 增强安全意识 ,比不停的打补丁要安全的多。

【实验结果】

目标主机经过以上配置窟 , 使用 lPC$ 空连接或 lPC$ 倍任连接〈有授权账户名和密码〉 , 都无法连接目标主机。


实验 3 监听、开放或关闭服务端口

【实验目的】

利用端口监控有效地保证系统的安全性 , 掌握基本的对端口活动实现监控的技能 , 了解黑客攻击手段及安置后门的方法。

【实验准备】

Plisten 和 NC, 由讲师事先准备好拷给学生。

【注意事项】

确保实验机器安装 FTP 和 IIS 服务 , 下面为三个独立实验 , 两台机器一组进行 ,分别完成。

【实验步骤】

在 Windows 2000/2003 下关闭端口

实验步骤 :

1 、首先 , 确保能够通过 HTTP 或 FTP 连接到合作伙伴机器

2 、右键单击 " 本地连接 ", 选取 " 属性 "," 常规 ", 选择 "intenet 协议 (TCP/IP) "

3 、单击 " 属性 " 按钮 , 在弹出的对话框中单击 " 高级 " 按钮

4 、在 " 高级 TCP/IP 设置 " 对话框中 , 选择 " 选项 "

5 、在 " 可选 " 设置对话框中 , 双击 "TCP/IP 筛选 ", 可以通过 " 全部允许 " 和 " 只允许 " 选项控制关

闭 / 打开TCP 和 UDP 端口 , 以及 IP 协议

6 、在 "TCP 端口 " 框下选择 " 只允许 ", 然后单击 " 添加 " 按钮 , 加入 80 端口

7 、单击 OK, 返回桌面 , 然后在提示下重新启动计算机

8 、分别通过 Web 浏览器和 FTP 方式访问合作伙伴 , 观察结果

9 、重复上述步骤,将80端口替换为21端口,再观察结果

利用这种关闭端口的方法保护系统有时并不是最佳的方法 , 除非服务器只是很单一的提供某一种或少数的服务时 , 可以考虑使用上述方法。

使用 Plisten 监听端口

1 、合作者 1: 打开 Plisten

2 、合作者 1: 选中 Listening On port 复选项 , 然后输入端口号 1200

3 、合作者 2: 启动任意操作系统

4 、合作者 2: 使用 1200 端口 Telnet 连接上合作伙伴 , 然后输入一些文本

5 、合作者 1: 注意端口监听器监昕到的来自合作者2 的连接和输入的文本

6 、合作者 1: 注意监听到的 IP 地址信息 , 使用这些情患可以跟踪攻击者


plisten 是一个较小的工具软件 , 并且所需要配置的参数也极少 , 我们只需点击上图中第四个配置图标进行一些配置即可 , 出现如图所示的对话框。

Startup Port 是当 Plisten 软件启动时监听的端口 , 我们可以根据需要设置 ,Log To 是存放日志文件的位置 , 在 Notify 项中还可以配置当发生连接时的通知方法如声音等。

Plisten 是一个功能有限的端口监听软件 , 并且不能同时监昕多个端口活动的情况 , 但是对于只监听某一个端口或服务的当前活动情况时还是比较有效的。

使用 NC(NetCat) 开放后门端口

实验步骤 :

1、合作双方 : 检查 /inetpub/wwwroot 下的 defauit.htm 文件 , 确信 web 服务正常运行

2、合作者 1: 以管理员身份登录 , 创建用户 userl, 密码为 trendedu1, 清除 User List.Change Password 复选项

3、合作者 1: 在 C: 分区根目录下创建目录 nc, 并将 nc.exe 复制到该文件夹下

4、合作者 1: 打开命令行提示 , 进入目录 c:\nc\ 运行以下命令 :

nc-v-L-e cmd.exe-p 20## s your_ip_address

以上命令将 cmd.exe 和 20## 端口绑定

5、合作者 2: 使用 20## 端口 telnet 连接到合作者 1

telnet ip_address 2001

6、我们会看到直接就能登陆到合作者 1 的机器上 , 进入到目录 C:\ inetpub\wwwroot 下

7、运行命令 echo U have been hacked>index-htm( 如果合作者 1 的 WEB 服务器的默认的页面文件为 index.htm)

8、当我们再次访问合作者 1 的 Web 站点时 , 将会看到页面包含 "u have been hacked "信息。

【实验结果】

参考以上三个实验的最终步骤结果 ,一一实现。

更多相关推荐:
教务管理系统课程设计报告

课程设计报告课程设计题目教务管理系统学生姓名王丙焱专业计算机科学与技术学号20xx30050202班级1130502指导教师李丽华20xx年6月20日11课程设计目标课程设计总的目标是衡量学生是否取得学习效果培...

数据库 教务管理系统 综合实验报告

华北科技学院计算机系综合性实验实验报告课程名称数据库系统A实验学期20xx至20xx学年第2学期学生所在系部计算机学院年级20xx专业班级网络B101班学生姓名学号任课教师实验成绩计算机系制华北科技学院计算机系...

数据库_教务管理系统_综合实验报告

华北科技学院计算机系综合性实验实验报告课程名称数据库原理及应用教程实验学期20xx至20xx学年第2学期学生所在系部计算机学院年级专业班级学生姓名学号任课教师郭红实验成绩计算机系制华北科技学院计算机系综合性实验...

教务管理系统实验报告

数据库应用实验报告学校教务管理系统学院系专业学生姓名学号大连理工大学DalianUniversityofTechnology1目录一概述11项目背景312课程设计目的313题目名称314开发环境3二需求分析21...

教务管理系统课程设计报告

目录摘要2一系统分析3二系统设计3三具体模块划分431登录模块432退出模块533母版模块534学生管理模块635教师管理模块836管理员管理模块9361管理员信息管理9362课程管理11363课表管理11四心...

数据库课程设计报告——教务管理系统

XX大学XXXX学院课程设计课题题目学部专业班级X班学号姓名指导老师20xx年6月23日成绩一系统功能分析与设计1需求分析制作教务管理信息系统的目的是为学校学生提供一个方便创建教师学生信息的工具实现能够方便快捷...

教务信息管理系统实验报告

Net程序设计实验报告班级姓名学号日期ASPNET计10A1黄溥10101020xx420xx年5月22日一实验目的及要求1234熟悉CookieResponseRequestSessionServerAppl...

小型书店进销存管理系统程序实验报告

小型书店进销存管理系统程序实验报告includeltiostreamgtincludeltstringgtincludeltfstreamgtusingnamespacestdstructshustoreint...

实验题目:绘制教务管理系统E-R图 实验报告

学生姓名李吉倩同组人马长玲时间20xx0923实验题目绘制教务管理系统ER图实验要求学校中有若干系每个系有若干班级和教研室每个教研室有若干教员其中有的教授和副教授每人各代若干研究生每个班有若干学生每个学生选修若...

汇编试验报告-学生信息管理系统

学生信息管理系统1.实验类别使用汇编语言编程2.实验内容和实验目的学生的信息包括姓名、班级、学号和成绩,其中成绩精确到1位小数。编写程序实现以下功能:(1)可以录入学生的信息,成绩以十进制形式录入,并显示;(2…

教务信息管理系统设计报告

软件设计与体系结构实验报告教务信息管理系统指导教师学号姓名20xx年12月22日目录一需求分析3二概要设计31系统功能分析32系统结构43系统时序图44系统设计45数据库设计5三详细设计6四调式分析与测试81界...

新闻管理系统试验报告

校园新闻管理系统的设计与实现实验报告班级10网工三班学生姓名谢昊天学号1215134046项目实训目的本课程设计为学生提供了一个既动手又动脑独立实践的机会将课本上的理论知识和实际有机的结合起来锻炼学生的分析解决...

教务管理系统实验报告(24篇)