【每日一更,直到完结】渗透测试培训之操作系统详解

  • A+
所属分类:安全文章




渗透测试培训之

操作系统详解







利刃信安

2021.01.30

 



第一章 环境部署

安装配置VM虚拟机

VMware WorkStation虚拟机软件是一款桌面计算机虚拟软件,让用户能够在单一主机上同时运行多个不同的操作系统。每个虚拟操作系统的硬盘分区、数据配置都是独立的,而且多台虚拟机可以构建为一个局域网。Linux系统对硬件设备的要求很低,我们没有必要再买一台电脑,课程实验用虚拟机完全可以搞定,而且VM还支持实时快照、虚拟网络、拖曳文件以及PXE(Preboot Execute Environment,预启动执行环境)网络安装等方便实用的功能。

第1步:运行下载完成的Vmware Workstation虚拟机软件包。

威睿虚拟机软件VMware Workstation Pro现已更新至v16.1.0,新版支持更多客户机操作系统版本,全面兼容Winddows 10最新版。12.0之后属于大型更新,专门为Win10的安装和使用做了优化,支持DX10、4K高分辨率显示屏、OpenGL 3.3、7.1声道及主流新硬件和新技术。下面附上激活密钥及解锁苹果系统补丁。

VMware是功能最强大的虚拟机软件,用户可以在虚拟机同时运行各种操作系统,进行开发、测试、演示和部署软件,虚拟机中复制服务器、台式机和平板环境,每个虚拟机可分配多个处理器核心、主内存和显存。VMware Workstation Pro 版延续了VMware的传统,即提供专业技术人员每天在使用虚拟机时所依赖的领先功能和性能。借助对最新版本的Windows和客户机操作系统版本、最新的处理器和硬件的支持以及连接到VMware vSphere和vCloud Air的能力,让它成为提高工作效率、节省时间和征服云计算的完美工具。

常见问题

* VMware启动系统黑屏如何解决?

经总结主要原因是14版本之后注册了两个LSP协议(vSockets DGRAM、vSockets STREAM)导致异常!

解决方法:使用LSP修复工具(例如:360安全卫士/金山毒霸里的LSP工具)修复LSP网络协议,或者重置下网络链接Winsock,即打开命令提示符cmd.exe,输入命令netsh winsock reset,重启系统即可解决!

* VMware启动后假死卡住如何解决?

解决方法:可以尝试关闭系统防火墙!

系统要求

VM16 -> Windows 10 或更高版64位

VM15 -> Windows 7 或更高版64位

VM12 -> Windows 7 或更高版64位

VM10 -> Windows XP 或更高版32位和64位

官方自VM14版本开始不支持某些老旧电脑硬件

会提示不支持或安装失败, 如遇到请退回12版本。

激活密钥

VMware激活密钥(通用批量永久激活)

16:ZF3R0-FHED2-M80TY-8QYGC-NPKYF

15:FC7D0-D1YDL-M8DXZ-CYPZE-P2AY6

12:ZC3TK-63GE6-481JY-WWW5T-Z7ATA

10:1Z0G9-67285-FZG78-ZL3Q2-234JG

下载地址

VMware Workstation Pro 16.1.0 Build 17198959 官方版 [2020/11/19] for Win10+

https://download3.vmware.com/software/wkst/file/VMware-workstation-full-16.1.0-17198959.exe

VMware Workstation Pro 15.5.7 Build 17171714 官方版 for Windows 7 或更高版64位

https://download3.vmware.com/software/wkst/file/VMware-workstation-full-15.5.7-17171714.exe

VMware Workstation Pro 12.5.9 Build 7535481 官方版 for Windows 7 或更高版64位

https://download3.vmware.com/software/wkst/file/VMware-workstation-full-12.5.9-7535481.exe

VMware Workstation 10.0.7 Build 2844087 官方版 for Windows XP 或更高版32位和64位

https://download3.vmware.com/software/wkst/file/VMware-workstation-full-10.0.7-2844087.exe

VMware Workstation解锁MacOS X补丁(包内有说明)

﹂macOS Unlocker v3.0.3 for VMware Workstation

VMware Workstation v16/15/14/12/10 激活密钥生成器

VM安装清理工具 + VM配置调试工具 + VM反虚拟机检测

https://pan.lanzous.com/b0f1dlirg

第2步:在虚拟机软件的安装向导界面单击“下一步”按钮。

第3步:在最终用户许可协议界面选中“我接受许可协议中的条款”复选框,然后单击“下一步”按钮。

第4步:选择虚拟机软件的安装位置(可选择默认位置),选中“增强型键盘驱动程序”复选框后单击“下一步”按钮。

第5步:根据自身情况适当选择“启动时检查产品更新”与“帮助完善VMware Workstation Pro”复选框,然后单击“下一步”按钮。

第6步:选中“桌面”和“开始菜单程序文件夹”复选框,然后单击“下一步”按钮。

第7步:一切准备就绪后,单击“安装”按钮。

第8步:进入安装过程,此时要做的就是耐心等待虚拟机软件的安装过程结束。

【每日一更,直到完结】渗透测试培训之操作系统详解







第9步:大约5~10分钟后,虚拟机软件便会安装完成,然后再次单击“完成”按钮。

第10步:双击桌面上生成的虚拟机快捷图标,输入许可证密钥,或者选择试用之后,单击“继续”按钮。

第11步:在出现“欢迎使用VMware Workstation 16”界面后,单击“完成”按钮。

【每日一更,直到完结】渗透测试培训之操作系统详解第12步:在桌面上再次双击快捷方式,此时便看到了虚拟机软件的管理界面。

CentOS-7-x86_64-DVD-2009操作系统安装

第1步:单击“创建新的虚拟机”选项,并在弹出的“新建虚拟机向导”界面中选择“典型”单选按钮,然后单击“下一步”按钮。

第2步:选中“稍后安装操作系统”单选按钮,然后单击“下一步”按钮。

如果选择“安装程序光盘镜像文件”单选按钮,并把下载好的CentOS 7系统的镜像选中。这样一来,虚拟机会通过默认的安装策略部署最精简的Linux系统,而不会再询问安装设置的选项。

【每日一更,直到完结】渗透测试培训之操作系统详解第3步:将客户机操作系统的类型选择为“Linux”,版本为“CentOS 7 64位”,然后单击“下一步”按钮。

第4步:填写“虚拟机名称”字段,并在选择安装位置之后单击“下一步”按钮。

第5步:将虚拟机系统的“最大磁盘大小”设置为20.0GB(默认即可),然后单击“下一步”按钮。

第6步:单击“自定义硬件”按钮。

第7步:建议将虚拟机系统内存的可用量设置为2GB,最低不应低于1GB。如果自己的真机设备具有很强的性能,那么也建议将内存量设置为2GB,因为将虚拟机系统的内存设置得太大没有必要。

【每日一更,直到完结】渗透测试培训之操作系统详解第8步:根据真机的性能设置CPU处理器的数量以及每个处理器的核心数量,并开启虚拟化功能。

第9步:光驱设备此时应在“使用ISO镜像文件”中选中了下载好的CentOS系统镜像文件。

第10步:VM虚拟机软件为用户提供了3种可选的网络模式,分别为桥接模式、NAT模式与仅主机模式。这里选择“仅主机模式”。

桥接模式:相当于在物理主机与虚拟机网卡之间架设了一座桥梁,从而可以通过物理主机的网卡访问外网。

NAT模式:让VM虚拟机的网络服务发挥路由器的作用,使得通过虚拟机软件模拟的主机可以通过物理主机访问外网,在真机中NAT虚拟机网卡对应的物理网卡是VMnet8。

仅主机模式:仅让虚拟机内的主机与物理主机通信,不能访问外网,在真机中仅主机模式模拟网卡对应的物理网卡是VMnet1。

第11步:把USB控制器、声卡、打印机设备等不需要的设备统统移除掉。移掉声卡后可以避免在输入错误后发出提示声音,确保自己在今后实验中思绪不被打扰。然后单击“关闭”按钮。

第12步:返回到虚拟机配置向导界面后单击“完成”按钮,虚拟机的安装和配置顺利完成。

【每日一更,直到完结】渗透测试培训之操作系统详解第13步:当看到下图界面时,就说明您的虚拟机已经被配置成功了。接下来准备步入属于您的Linux系统之旅吧。



安装CentOS系统

装CentOS 7系统时,电脑的CPU需要支持VT(Virtualization Technology,虚拟化技术)。所谓VT,指的是让单台计算机能够分割出多个独立资源区,并让每个资源区按照需要模拟出系统的一项技术,其本质就是通过中间层实现计算机资源的管理和再分配,让系统资源的利用率最大化。如果开启虚拟机后依然提示“CPU不支持VT技术”等报错信息,请重启电脑并进入到BIOS中把VT虚拟化功能开启即可。




【每日一更,直到完结】渗透测试培训之操作系统详解

第1步:在虚拟机管理界面中单击“开启此虚拟机”按钮后数秒就看到CentOS 7系统安装界面,如图1-26所示。在界面中,Test this media & install CentOS 7.0和Troubleshooting的作用分别是校验光盘完整性后再安装以及启动救援模式。此时通过键盘的方向键选择Install CentOS 7.0选项来直接安装Linux系统。


第2步:接下来按回车键后开始加载安装镜像,所需时间大约在30~60秒,请耐心等待。

【每日一更,直到完结】渗透测试培训之操作系统详解第3步:选择系统的安装语言后单击Continue按钮。

第4步:在安装界面中单击SOFTWARE SELECTION选项。

第5步:CentOS 7系统的软件定制界面可以根据用户的需求来调整系统的基本环境,例如把Linux系统用作基础服务器、文件服务器、Web服务器或工作站等。此时您只需在界面中单击选中Server with GUI单选按钮,然后单击左上角的Done按钮即可。

第6步:返回到CentOS 7系统安装主界面,单击NETWORK & HOSTNAME选项后,将Hostname字段设置为LRXA,然后单击左上角的Done按钮。

第7步:返回到安装主界面,单击INSTALLATION DESTINATION选项来选择安装媒介并设置分区。此时不需要进行任何修改,单击左上角的Done按钮即可。


【每日一更,直到完结】渗透测试培训之操作系统详解第8步:返回到安装主界面,单击Begin Installation按钮后即可看到安装进度,在此处选择ROOT PASSWORD。

第9步:然后设置root管理员的密码。若坚持用弱口令的密码则需要单击2次左上角的Done按钮才可以确认。这里需要多说一句,当在虚拟机中做实验的时候,密码无所谓强弱,但在生产环境中一定要让root管理员的密码足够复杂,否则系统将面临严重的安全问题。

第10步:Linux系统安装过程一般在30~60分钟,在安装过程期间耐心等待即可。安装完成后单击Reboot按钮。

第11步:重启系统后将看到系统的初始化界面,单击LICENSE INFORMATION选项。

第12步:选中I accept the license agreement复选框,然后单击左上角的Done按钮。

第13步:返回到初始化界面后单击FINISH CONFIGURATION选项,即可看到Kdump服务的设置界面。如果暂时不打算调试系统内核,也可以取消选中Enable kdump复选框,然后单击Forward按钮。

第14步:虚拟机软件中的CentOS 7系统经过又一次的重启后,我们终于可以看到系统的欢迎界面。在界面中选择默认的语言English (United States),然后单击Next按钮。

第15步:将系统的输入来源类型选择为English (US),然后单击Next按钮。

第16步:为CentOS 7系统创建一个本地的普通用户,该账户的用户名为LRXA,密码为CentOS,然后单击Next按钮。

第17步:设置系统的时区,然后单击Next按钮。

【每日一更,直到完结】渗透测试培训之操作系统详解第18步:单击Start using Red Hat Enterprise Linux Server按钮。至此,CentOS 7系统完成了全部的安装和部署工作。准备开始学习Linux系统吧。

CentOS-7-x86_64-DVD-2009下载地址:

CentOS官网:https://www.centos.org/

CentOS下载页面:https://www.centos.org/centos-linux/

http://isoredirect.centos.org/centos/7/isos/x86_64/

镜像文件:

清华大学:

https://mirrors.tuna.tsinghua.edu.cn/centos/7.9.2009/isos/x86_64/

阿里云:

http://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/

华为云:

http://mirrors.huaweicloud.com/centos/7.9.2009/isos/x86_64/

 


第二章 每天一个Linux命令

一、每天一个Linux命令(1):ls命令

ls命令

ls命令用于显示目录中的文件信息,格式为“ls [选项] [文件] ”。

【每日一更,直到完结】渗透测试培训之操作系统详解所处的工作目录不同,当前工作目录下的文件肯定也不同。使用ls命令的“-a”参数看到全部文件(包括隐藏文件),使用“-l”参数可以查看文件的属性、大小等详细信息。将这两个参数整合之后,再执行ls命令即可查看当前目录中的所有文件并输出这些文件的属性信息:

如果想要查看目录属性信息,则需要额外添加一个-d参数。例如,可使用如下命令查看/etc目录的权限与属性信息:

[[email protected] /]$ ls -ld /etc

drwxr-xr-x. 140 root root 8192 1月  30 11:36 /etc

ls命令是linux下最常用的命令。ls命令就是list的缩写,缺省下ls用来打印出当前目录的清单。如果ls指定其他目录,那么就会显示指定目录里的文件及文件夹清单。 通过ls 命令不仅可以查看linux文件夹包含的文件而且可以查看文件权限(包括目录、文件夹、文件权限)、查看目录信息等等。ls 命令在日常的linux操作中用的很多!

命令格式:

ls [选项] [目录名]

命令功能:

列出目标目录中所有的子目录和文件。

常用参数:

-a, --all               不隐藏任何以. 开始的项目

列出目录下的所有文件,包括以 . 开头的隐含文件

-A, --almost-all          列出除. 及.. 以外的任何项目

不列出“.”(表示当前目录)和“..”(表示当前目录的父目录)。

-c 

配合 -lt:根据 ctime 排序及显示 ctime (文件状态最后更改的时间)

配合 -l:显示 ctime 但根据名称排序否则:根据 ctime 排序

-C 每栏由上至下列出项目

--color[=WHEN] 控制是否使用色彩分辨文件。WHEN 可以是’never’、’always’或’auto’其中之一

-d, --directory 将目录像文件一样显示,而不是显示其下的文件。

-D, --dired 产生适合 Emacs 的 dired 模式使用的结果

-f 对输出的文件不进行排序,-aU 选项生效,-lst 选项失效

-g                    类似-l,但不列出所有者

-G, --no-group          以一个长列表的形式,不输出组名

-h, --human-readable          与-l 一起,以易于阅读的格式输出文件大小(例如 1K 234M 2G)

--si               同上面类似,但是使用1000 为基底而非1024

-H, --dereference-command-line 使用命令列中的符号链接指示的真正目的地

--indicator-style=WORD 指定在每个项目名称后加上指示符号<方式>:none (default), slash (-p),

        file-type (--file-type), classify (-F)

-i, --inode 印出每个文件的 inode 号

-I, --ignore=PATTERN 不印出任何符合 shell 万用字符<样式>的项目

-k, --kibibytes 即 –block-size=1K,以 k 字节的形式表示文件的大小。

-l                    使用较长格式列出信息

 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来。

-L, --dereference          当显示符号链接的文件信息时,显示符号链接所指示的对象而并非符号链接本身的信息

-m                    所有项目以逗号分隔,并填满整行行宽

-o                    类似 -l,但不列出有关组的信息

显示文件的除组信息外的详细信息。

-r, --reverse               逆序排列

-R, --recursive          递归显示子目录

同时列出所有子目录层

-s, --size               以块数形式显示每个文件分配的尺寸

以块大小为单位列出所有文件的大小

-S 根据文件大小排序

--sort=WORD 以下是可选用的 WORD 和它们代表的相应选项:

none (-U),

size (-S),

time (-t),

version (-v),

extension (-X)

-t 以文件修改时间排序

-u

配合 -lt:显示访问时间而且依访问时间排序

配合 -l:显示访问时间但根据名称排序

否则:根据访问时间排序

-U不进行排序;依文件系统原有的次序列出项目

-v根据版本进行排序

-w, --width=COLS 自行指定屏幕宽度而不使用目前的数值

-x 逐行列出项目而不是逐栏列出

-X 根据扩展名排序

-1 每行只列出一个文件

--help          显示此帮助信息并退出

--version          显示版本信息并退出

例1:列出/etc文件夹下的所有文件和目录的详细资料

命令:ls -lR /etc

在使用 ls 命令时要注意命令的格式:在命令提示符后,首先是命令的关键字,接下来是命令参数,在命令参数之前要有一短横线“-”,所有的命令参数都有特定的作用,自己可以根据需要选用1个或者多个参数,在命令参数的后面是命令的操作对象。在以上这条命令“ ls -l -R /etc”中,“ls” 是命令关键字,“-l -R”是参数,“ /etc”是命令的操作对象。在这条命令中,使用到了两个参数,分别为“l”和“R”,当然,你也可以把他们放在一起使用。

两种形式执行的结果是完全一样的。另外,如果命令的操作对象位于当前目录中,可以直接对操作对象进行操作;如果不在当前目录则需要给出操作对象的完整路径,例如上面的例子中,我的当前文件夹是/文件夹,我想对/文件夹下的etc文件进行操作,我可以直接输入 ls -lR etc,也可以用 ls -lR /etc。

例2:列出当前目录中所有以“t”开头的目录的详细内容,可以使用如下命令:

命令:ls -l t*

可以查看当前目录下文件名以“t”开头的所有文件的信息。其实,在命令格式中,方括号内的内容都是可以省略的,对于命令ls而言,如果省略命令参数和操作对象,直接输入“ ls ”,则将会列出当前工作目录的内容清单。

例3:只列出文件下的子目录

命令:ls -F /etc | grep /$

【每日一更,直到完结】渗透测试培训之操作系统详解列出 /etc 文件下面的子目录

命令:ls -l /etc | grep "^d"

列出 /etc 文件下面的子目录详细情况

【每日一更,直到完结】渗透测试培训之操作系统详解例4:列出目前工作目录下所有名称是s 开头的档案,愈新的排愈后面,可以使用如下命令:

【每日一更,直到完结】渗透测试培训之操作系统详解命令:ls -ltr s*

例5:列出目前工作目录下所有档案及目录;目录于名称后加”/”, 可执行档于名称后加”*”

命令:ls -AF

例6:计算当前目录下的文件数和目录数

命令:

ls -l * |grep "^-"|wc -l    —文件个数

ls -l * |grep "^d"|wc -l    —目录个数

例7: 在ls中列出文件的绝对路径

命令:ls | sed "s:^:`pwd`/:"

【每日一更,直到完结】渗透测试培训之操作系统详解# 就是在每行记录的开头加上当前路径

例8:列出当前目录下的所有文件(包括隐藏文件)的绝对路径, 对目录不做递归

命令:find $PWD -maxdepth 1 | xargs ls -ld

例9:递归列出当前目录下的所有文件(包括隐藏文件)的绝对路径

命令: find $PWD | xargs ls -ld

例10:指定文件时间输出格式

命令:

ls -tl -–time-style=full-iso

【每日一更,直到完结】渗透测试培训之操作系统详解ls -ctl -–time-style=long-iso

扩展:

显示彩色目录列表

打开/etc/bashrc, 加入如下一行:

alias ls=ls --"color"

下次启动bash时就可以像在Slackware里那样显示彩色的目录列表了, 其中颜色的含义如下:

1. 蓝色–>目录

2. 绿色–>可执行文件

3. 红色–>压缩文件

4. 浅蓝色–>链接文件

5. 灰色–>其他文件


二、每天一个Linux命令(2):cd命令

cd命令用于切换工作路径,格式为“cd [目录名称]”。

这个命令应该是最常用的一个Linux命令了。可以通过cd命令迅速、灵活地切换到不同的工作目录。除了常见的切换目录方式,还可以使用“cd -”命令返回到上一次所处的目录,使用“cd..”命令进入上级目录,以及使用“cd ~”命令切换到当前用户的家目录,亦或使用“cd ~username”切换到其他用户的家目录。例如,可以使用“cd 路径”的方式切换进/etc目录中:

cd /etc

同样的道理,可使用下述命令切换到/bin目录中:

cd /bin

此时,要返回到上一次的目录(即/etc目录),可执行如下命令:

cd –

还可以通过下面的命令快速切换到用户的家目录:




【每日一更,直到完结】渗透测试培训之操作系统详解

cd ~


Linux cd 命令可以说是Linux中最基本的命令语句,其他的命令语句要进行操作,都是建立在使用 cd 命令上的。所以,学习Linux 常用命令,首先就要学好 cd 命令的使用方法技巧。

cd [目录名]

切换当前目录至dirName

-P     如果切换的目标目录是一个符号链接,则直接切换到符号链接指向的目标目录

-L     如果切换的目标目录是一个符号链接,则直接切换到符号链接名所在的目录

--     仅使用”-“选项时,当前目录将被切换到环境变量”OLDPWD”对应值的目录

~     切换至当前用户目录

..     切换至当前目录位置的上一级目录

例1:进入系统根目录

命令:cd /

说明:进入系统根目录,上面命令执行完后拿ls命令看一下,当前目录已经到系统根目录了

cd .. 或者 cd .. //

进入系统根目录可以使用“ cd .. ”一直退,就可以到达根目录

cd ../.. //

说明:使用cd 命令实现进入当前目录的父目录的父目录。

例2:使用 cd 命令进入当前用户主目录

“当前用户主目录”和“系统根目录”是两个不同的概念。进入当前用户主目录有两个方法。

命令1:cd

命令2:cd ~

例3:跳转到指定目录

命令:cd /etc

跳转到指定目录,从根目录开始,目录名称前加 / ,当前目录内的子目录直接写名称即可

例4:返回进入此目录之前所在的目录

命令:cd –

例5:把上个命令的参数作为cd参数使用。

【每日一更,直到完结】渗透测试培训之操作系统详解命令:cd !$





三、每天一个Linux命令(3):pwd命令

四、每天一个Linux命令(4):mkdir命令

五、每天一个Linux命令(5):cp命令

六、每天一个Linux命令(6):mv命令

七、每天一个Linux命令(7):rm命令

八、每天一个Linux命令(8):vim命令

九、每天一个Linux命令(9):cat命令

十、每天一个Linux命令(10):grep命令

十一、每天一个Linux命令(11):find命令

十二、每天一个Linux命令(12):reboot命令

十三、每天一个Linux命令(13):shutdown命令

十四、每天一个Linux命令(14):password命令

十五、每天一个Linux命令(15):useradd命令

十六、每天一个Linux命令(16):userdel命令

十七、每天一个Linux命令(17):ifconfig命令

十八、每天一个Linux命令(18):ifdown命令

十九、每天一个Linux命令(19):ifup命令

二十、每天一个Linux命令(20):rpm命令

二十一、每天一个Linux命令(21):yum命令

二十二、每天一个Linux命令(22):firewalld命令


本文始发于微信公众号(利刃信安二狗子):【每日一更,直到完结】渗透测试培训之操作系统详解

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: