用kali虚拟机
服务器操作系统
安装在大型计算机上的操作系统,belike Web服务器,应用服务器,数据库服务器等,是企业IT系统的基础架构平台。
1、Linux优点
开源
源代码对用户开放,自由获取、使用和修改。
稳定
能处理大量的并发请求,运行时间较长的任务
安全
由于开源性,Linux操作系统可以由全球的开发者社区进行审查和修复漏洞;快速响应和更新的能力,以应对不断变化的安全威胁
Linux发行版
Debian
志愿者开发的发型Linux非商业项目
Ubuntu
Debian项目构建的一个Linux发行版,专注于提供用户友好桌面和服务器操作系统
RedHat
(收费)红帽公司,产品包括:PHEL,Fedore Core和CentOS
CentOS
(免费)RHEL依照开源代码规定释出的源码所编译而成
kali
基于Debian的Linux发行版,预安装了许多安全工具
Linux目录结构
重要要记录的目录
根目录 "/"
"/"
etc
系统配置文件
home
家目录
root
超级管理员的存放文件
usr
存放系统软件资源
tmp
临时文件
bin
存放命令
2、Linux用户与组管理
用户(User)
用户账户
用户账户包含了用户的信息:用户名、用户ID(UID)、用户组、家目录、默认Shell等
UID(User ID)
每个用户拥有的唯一一个数字标识符--UID,0是超级用户root,用友系统上的所有权限
普通用户uid从1000开始
用户信息文件
/etc/passwd文件包含了系统上所有用户信息,每一行代表一个用户,包括用户名,UID、组ID、用户组名或描述、家目录,默认Shell等信息
用户密码文件
用户的密码信息不直接存储在文件/etc/passw中,而是存储在文件/etc/shadow中,该文件包含了加密后的密码、密码最后一次更改的日期、密码的最小和最大有效期等信息。
root,提权
sudo passwd root
sudo:临时提权
passwd root:修改用户密码
切换用户
su root
组
用户组
便于对文件或目录的权限管理,用户可以是多个组的成员
GID
每个用户组都有唯一的一个数字标识符,组ID
组信息文件
文件/etc/group包含了系统上所有用户组的信息,每一行代表一个组,包含组名、GID、组成员列表等信息。
现在正在登陆的是哪个用户
whoami
用户信息
id 用户名
cat:查看
查看所有用户
cat /etc/passwd
x:现在安全性提高了,取消了 放了个占位符,有一些是星号
0:uid
0:gid
root:备注,具体描述信息
/root:用户家目录(用户所在目录)
/usr/bin/zsh:命令解释器,bin放命令
查看所有组
cat /etc/group
查看用户信息
id 用户名
把用户加入某个组
usermod -aG 组名 用户名
一个用户可以在多个组内
修改用户信息
usermod
只输入usermod会出来很多参数,对应不同操作
3、Linux文件与目录管理
常见文件目录指令
查看当前文件所在位置
pwd
切换目录--跟随相对路径和绝对路径
绝对目录:是从头开始/usr/bin(/开头 相对目录:从当前路径开始写起usr/bin(不用/开头
cd
以平埔方式显示当前目录包含内容
ls
查看隐藏文件
ls -a
· :当前目录
·· :上级目录
以详细列表形式显示当前目录包含内容
ll
文件权限
ls:列出当前目录下文件
ll/ls -l:列出当前目录下文件(详细)
第一个数字代表多少个文件
第一个 kali代表用户名 第二个 kali代表组名 最后修改文件的时间
rmdir ./bbb----.是指当前目录下
注意删掉某文件要在该文件所在目录下去删,切换到那个目录下
Linux删除不可逆
创建文件 .txt结尾的文档,要加上后缀
touch 文件名
修改文件权限
修改文件权限
chmod ---文件名(数字
chmod u=rwx,g=---,o=--- 文件名(rwx
更改文件所有者
chown 新用户名:新组名 test
linux目录结构
命令模式
该状态敲击键盘会被Vim识别为命令而非输入字符
常用命令
i\a 切换到输入模式,当光标在当前位置开始输入文本
o在当前行的下方插入一个新行
dd删除当前行
yy复制当前行
p粘贴剪辑版内容到光标下方
u撤销上一次操作
:切换到底线命令模式
底线命令模式
q退出
wq保存并退出vim编辑
q!强制退出vim编辑 不保存
vim test.txt
命令模式
输入模式
底线模式
黑客入侵 检查编辑器
vim:相当于 查看.编辑器
/var/log/auth.logLinux用于查看编辑日志相关命令
完事可以撤销
Linux进程与软件管理
进程:Linux系统进程是指在Linux操作系统中运行的每一个独立的事物或程序实例,每一个进程都有自己的地址空间,系统资源(文件句柄和内存)以及一个唯一的进程标识符(PID)Linux通过进程模拟实现了多任务处理和并发执行,允许同时运行多个进程。
ps显示当前终端下运行的进程。
ps -aux显示所有用户的所有进程,包括系统进程,提供更详细的进程信息。
user 进程的用户
kill PID 终止指定PID进程。
kill -9 PID 强制终止进程。
包管理器——管理软件包的工具,帮助用户安装删除软件的工具
包格式:deb
包管理器:apt apt install xxxxx
要切换为root用户,不然会报错,权限不足
apt update列出所有可更新的软件清单
apt upgrade升级软件包
apt install <package_name>安装指定的软件
apt remove <paceage_name>删除软件包
apt list --installed列出所有已安装包
apt list --all-versions列出所有已安装的包版本信息
安装镜像源vim /etc/apt/sources.list
更快的下载速度,国外源会很慢
#klai官方源
deb https://http.kali.org/kali kali-rolling main non-free contrib
deb-src https://http.kali.org/kali kali-rolling main non-free contrib
#阿里源
deb https://mirrors.aliyun.com/kali kali-rolling main non-free contrib
deb-src https://mirrors.aliyun.com/kali kali-rolling main non-free contrib
#中科大源
deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
#清华大学源
deb http://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free
deb-src https://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free
#浙大源
deb http://mirrors.zju.edu.cn/kali kali-rolling main contrib non-free
deb-src http://mirrors.zju.edu.cn/kali kali-rolling main contrib non-free
#东软大学源
deb http://mirrors.neusoft.edu.cn/kali kali-rolling/main non-free contrib
deb-src http://mirrors.neusoft.edu.cn/kali kali-rolling/main non-free contrib
#网易Kali源
deb http://mirrors.163.com/debian wheezy main non-free contrib
deb-src http://mirrors.163.com/debian wheezy main non-free contrib
由于每个人电脑环境不同,可能有些源会冲突,只用粘贴一个源就行了
Linux系统防火墙
iptables-静态防火墙
配置文件在/etc/sysconfig/iptables,
工作在网络层,只可以通过命令进行配置,
默认允许所有,需要通过拒绝去做限制,
修改规则后必须全部刷新才能生效,还会丢失链接(无法守护进程)
firewalld-动态防火墙
取代了iptables防火墙,配置文件/usr/lib/firewalld和/etc/firewalld中,
工作在网络层,配置通过命令和图形化界面都可,
默认拒绝所有,配置放行允许,
动态修改单条规则,动态管理规则集(允许更新规则而不破坏现有绘画和莲见,可以守护进程)
一些常用指令-简单了解 不需要特殊记忆
kali 本身没有防火墙,默认显示没有
Shell 脚本
Shell是一个用c语言编写的程序,用户使用Linux的桥梁, Shell脚本(shell script)是为shell编写的脚本程序,意义为便于批量处理多种操作 Linux的Shell种类众多常,见的有
2--bash易用且免费
touch test01.sh
执行脚本文件----没有空格
文件权限
xshell 连接虚拟机
支持ssh,serial等多种协议 默认kali没有开启ssh服务
开服务
开机自启动
查看ssh状态
xshell 连接
Hydra九头蛇 傻瓜式爆破-ssh弱口令爆破
- 确定ssh启动
service ssh restart
2.指定kali账号用pass.txt文件 使用3个线程 爆破本地的ssh
已知账号破解密码
hydra 参数 ip地址 服务名
hydra -l kali -P pass.txt -3 -e ns 127.0.0.1
-l:指定用户名 kali
-P:指向密码字典文件
-t:线程数量,设置过高容易被发现
-e:额外检查 n(通空码进行登录:很多系统初始没有密码,空密码)s(用户名本身作为密码进行登录)
实施一下