2020年网络安全国赛解析(仅个人想法)

2023-10-27

A-1任务一登录安全加固

请对服务器Log、Web、Data 按要求进行相应的设置,提高服务器的安全性。

1.密码策略(Log,Web,Data)

a. 最小密码长度不少于8个字符;

  windows:

  1. 打开本地安全策略  (开始菜单/管理工具(管理)/本地安全策略)
  2. 在账户策略/密码策略中将密码长度最小值修改为8

   Linux:

  1. 找到配置文件/etc/pam.d/system-auth配置文件
  2. 在配置文件中找到password   requisite     pam_cracklib.so   try    first_pass retry=3 type= 所在行
  3. 在该行末尾空一格追加minlen=8      (注意这里不换行)

b. 密码策略必须同时满足大小写字母、数字、特殊字符。

  Windows:

  1. 打开本地安全策略  (开始菜单/管理工具(管理)/本地安全策略)
  2. 在账户策略/密码策略中将密码必须符合复杂性要求修改为已启用

   Linux:

  1. 找到配置文件/etc/pam.d/system-auth配置文件
  2. 在配置文件中找到password   requisite     pam_cracklib.so   try    first_pass retry=3 type= 所在行
  3. 在该行末尾空一格追加dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1

2. 登录策略(Log,Web,Data)

a.在用户登录系统时,应该有“For authorized users only”提示信息;

  Windows:

  1. 打开本地安全策略  (开始菜单/管理工具(管理)/本地安全策略)
  2. 在本地策略/安全选项中将交互式登录:视图登录的用户的消息标题修改为For authorized users only.
  3. 在本地策略/安全选项中将交互式登录:视图登录的用户的消息文本修改为For authorized users only.

   Linux:

  1. 将以下三个配置文件的内容都修改为For authorized users only

/etc/issue

/etc/issue.net

/etc/motd

  1. 在/etc/ssh/sshd_config中将Banner的注释去掉,修改为以下内容

Banner /etc/issue

  1. 重启sshd服务.

b.一分钟内仅允许5次登录失败的尝试,超过5次,登录帐号锁定1分钟;

  Windows:

  1. 打开本地安全策略;  (开始菜单/管理工具(管理)/本地安全策略)
  2. 在账户策略/账户锁定策略中将账户锁定时间修改为1分钟;
  3. 在账户策略/账户锁定策略中将账户锁定阈值修改为5次;
  4. 在账户策略/账户锁定策略中将重置账户锁定计数器修改为1分钟;
  5. 在本地策略/安全选项中将交互式登录:需要域控制器身份验证以对工作站进行解锁修改为已启用.

   Linux:

  1. 在/etc/pam.d/system-auth配置文件第二行后追加一行添加以下内容:

auth        required      pam_tally2.so deny=5 onerr=fail even_deny_root unlock_time=60

c.远程用户非活动会话连接超时应小于等于5分钟。

3. 用户安全管理(Web)

a.对服务器进行远程管理安全性SSL加固,防止敏感信息泄露被监听;

b.查找并删除服务器中可能存在的帐号hacker;

  Windows:

  1. 打开计算机管理;  (开始菜单/管理工具(管理)/计算机管理)
  2. 在系统工具/本地用户和组/用户中找到并删除hacker账号.

c.普通用户进行最小权限管理,对关闭系统仅限管理员帐号。

  Windows:

  1. 打开本地安全策略;  (开始菜单/管理工具(管理)/本地安全策略)
  2. 在本地策略/用户权限分配中将关闭系统修改为Administrator;

  Linux:

  1. 使用visudo检查是否存在越权用户. 

A-2任务二 数据库加固(Data)

  1. 以普通帐户MySql安全运行MySql,禁止MySql以管理员帐号权限运行;
  1. 找到mysql配置文件;     (/etc/my.cnf)
  2. 在[mysqld]选项下加入user=mysql

 2.删除默认数据库(test);

  过程:

  1. 以数据库管理员的账号登录进mysql中;(登录过程可参考第6题)
  2. drop database test.

3.改变默认MySql管理员用户为:SuperRoot;

  过程:

  1. 以数据库管理员的账号登录进mysql中;(登录过程可参考第6题)
  2. use mysql;
  3. update user set user= "SuperRoot" where user="root";
  4. flush privileges.

4.使用MySql内置MD5加密函数加密用户user1的密码为(P@ssw0rd1!);

  过程:

  1. 以数据库管理员的账号登录进mysql中;(登录过程可参考第6题)
  2. use mysql;
  3. update user set password=md5("P@ssw0rd1!") where user="user1";
  4. flush privileges.

5.赋予user1用户对数据库所有表只有select,insert,delete,update权限;

  过程:

  1. 以数据库管理员的账号登录进mysql中;(登录过程可参考第6题)
  2. revoke all privileges on *.* from 'user1'@'%';
  3. grant select,insert,delete,update on *.* to 'user1'@'%';
  4. flush privileges.

6. 对忘记mysql数据库SuperRoot管理员密码进行重置操作;

  过程:

  1. 打开mysql配置文件;     /etc/my.cnf
  2. 在[mysqld]选项下加入skip-grant-tables
  3. 重启mysql服务
  4. 重新登录mysql,登录账号和密码为任意字符
  5. 进入数据库后执行如下命令:
  1.   use mysql;
  2. update user set password=password('新密码') where user='SuperRoot';
  3. flush privileges;
  1. 命令执行完成后退出数据库;
  2. 将第二步中加入的skip-grant-tables字段删除;
  3. 重启mysql服务.

7.禁用LOCAL INFILE命令防止非授权用户访问本地文件;

  过程:

  1. 打开mysql配置文件:            /etc/my.cnf
  2. 在[mysqld]选项下加入local-infile=0
  3. 重启mysql服务.

8.为防止数据库操作信息泄露,请禁止使用MySql命令行历史记录;

  过程:

  1. rm -f ~/.mysql_history
  2. 打开/etc/profile配置文件;
  3. 在该配置文件末尾添加export MYSQL_HISTFILE=/dev/null
  4. source /etc/profile

9.为了分析数据库运行过程中的一些异常活动,请开启MySql二进制日志。 

过程:

  1. 打开打开mysql配置文件;
  2. 在[mysqld_safe]选项下加入log-bin=/var/log/msqld_bin.log
  3. 重启mysql服务

A-3任务三 Web安全加固(Web)

1.为了防止web中.mdb数据库文件非法下载,请对Web配置文件进行安全加固;

  过程:

  1. 打开IIS管理器          (开始菜单/管理工具/Internet信息服务(IIS)管理器)
  2. 双击网站,在网站主页中选择请求筛选
  3. 在空白部分右键选择拒绝扩展名为.mdb

2.限制目录执行权限,对picture和upload目录设置执行权限为无;

  过程:

  1. 打开IIS管理器          (开始菜单/管理工具/Internet信息服务(IIS)管理器)
  2. 在左侧网站中找到picture和upload目录
  3. 依次右键找到安全选项,选择编辑权限.

3.开启IIS的日志审计记录(日志文件保存格式为W3C,只记录日期、时间、客户端IP地址、用户名、方法);

  过程:

  1. 打开IIS管理器          (开始菜单/管理工具/Internet信息服务(IIS)管理器)
  2. 双击网站,在网站主页中选择日志
  3. 在日志文件中将格式修改为W3C,并选择所需字段.
  4. 在右侧点击应用完成更改.

4.为了减轻网站负载,设置网站最大并发连接数为1000;

过程:

  1. 打开IIS管理器          (开始菜单/管理工具/Internet信息服务(IIS)管理器)
  2. 找到网站,右键找到管理网站/高级设置
  3. 在弹出的对话框中找到连接限制/最大并发连接数修改为1000

5.防止文件枚举漏洞枚举网络服务器根目录文件,禁止IIS短文件名泄露;

  过程:

  1. 打开命令提示符输入fsutil 8dot3name set 1       (Windows Server 2008 R2)
  2. 打开命令提示符输入fsutil behavior set disable8dot3 1   (Windows Server 2003)

6.关闭IIS的WebDAV功能增强网站的安全性

  过程:

  1. 打开IIS管理器          (开始菜单/管理工具/Internet信息服务(IIS)管理器)
  2. 双击网站,在网站主页中选择WebDav创作规则
  3. 在空白部分右键选择禁用WebDav

A-4任务四 流量完整性保护(Web,Data)

1.对Web网站进行HTTP重定向HTTPS设置,仅使用HTTPS协议访问网站(Web)(注证书颁发给test.com 并通过https://www.test.com访问Web网站);

2.为了防止密码在登录或者传输信息中被窃取,仅使用证书登录SSH(Data)。 

A-5任务五 事件监控(Web)

1.将Web服务器开启审核策略

登录事件 成功/失败;

特权使用 成功;

策略更改 成功/失败;

进程跟踪 成功/失败;

  过程:

  1. 打开本地安全策略;  (开始菜单/管理工具(管理)/本地安全策略)
  2. 在本地策略/审核策略中按题目要求进行修改.

2.配置splunk接收Web服务器,安全日志,系统日志,CPU负载,内存,磁盘空间,网络状态。

  过程:

  1. web网页进行配置

A-6任务六 服务加固ssh\vsFTPd (Data)

1.修改ssh服务端口为2222;

  过程:

  1. 修改/etc/ssh/sshd_config配置文件中的Port字段
  2. 重启sshd服务

2.ssh禁止ROOT用户远程登录;

  过程:

  1. 修改/etc/ssh/sshd_config配置文件中的PermitRootLogin字段为no
  2. 重启sshd服务

3.vsFTPd禁止匿名用户上传;

  过程:

  1. 找到/etc/vsftpd/vsftpd.conf配置文件
  2. 去掉anon_upload_enable=YES前的注释,并将其值修改为NO
  3. 重启vsftpd服务.

4.激活vsFTPd上传下载日志;

  过程:

  1. 找到/etc/vsftpd/vsftpd.conf配置文件
  2. 将xferlog_enable的值修改为YES,并检查是否有注释    (默认为yes)
  3. 重启vsftpd服务.

5.vsFTPd同一个IP只能连接两个;

  过程:

  1. 找到/etc/vsftpd/vsftpd.conf配置文件
  2. 将max_per_ip的值修改为2                 (默认没有该字段,需添加)
  3. 重启vsftpd服务

6.vsFTPd将使客户端连接时的端口范围在50000和60000之间;

  过程:

  1. 找到/etc/vsftpd/vsftpd.conf配置文件
  2. 将pasv_min_port的值修改为50000          (默认没有这两个字段,需添加)
  3. 将pasv_max_port的值修改为60000
  4. 重启vsftpd服务

7.vsFTPd使本地用户登录活动范围限制在home目录。

  过程:

  1. 找到/etc/vsftpd/vsftpd.conf配置文件
  2. 将chroot_local_user的值修改为YES        (默认为YES)
  3. 重启vsftpd服务

A-7任务七 防火墙策略

所有服务器开启防火墙,为防止勒索病毒攻击对防火墙进行加固策略:

1.Windows系统禁用445端口;

  过程:

  1. 打开高级安全windows防火墙
  2. 在入站规则和出站规则分别设置TCP和UDP端口.
  3. Linux系统禁用23端口;

Iptables

3.Linux系统禁止别人ping通;

4.Linux系统为确保安全禁止所有人连接ssh除了192.168.1.1这个ip。

B-1任务一:Web安全渗透测试(一)

任务环境说明:

服务器场景:server1

服务器场景用户名、密码:未知(关闭链接)

1.通过URL访问http://靶机IP/1,对该页面进行渗透测试,将完成后返回的结果内容作为flag值提交;

2.通过URL访问http://靶机IP/2,对该页面进行渗透测试,将完成后返回的结果内容作为flag值提交;

3.通过URL访问http://靶机IP/3,对该页面进行渗透测试,将完成后返回的结果内容作为flag值提交;

4.通过URL访问http://靶机IP/4,对该页面进行渗透测试,将完成后返回的结果内容作为flag值提交;

5.通过URL访问http://靶机IP/5,对该页面进行渗透测试,将完成后返回的结果内容作为flag值提交。

B-2任务二:Web渗透测试(二,三,五)

*任务说明:仅能获取Server4的IP地址

1.获取PHP的版本号作为flag值提交;(例如:5.2.14)

2.获取MySQL数据库的版本号作为flag值提交;(例如:5.0.22)

3.获取系统的内核版本号作为flag值提交;(例如:2.6.18)

4.获取网站后台管理员admin用户的密码作为flag值提交;

5.找到/root目录中的txt文件,将文件内容作为flag值提交。

B-3任务三:数字取证(二,五)

*任务说明:仅能获取Server1的IP地址

1.黑客成功进入了Server1中并且创建了多个用户,将黑客创建的用户名作为flag值提交{名字1-名字2-……};

2.黑客是通过上传页面进行上传木马,将上传页面找到,上传页面文件名作为flag值提交;

3.找到对应的木马后门,将木马文件名作为flag值提交;

4.查看木马文件,将木马文件的登录密码进行提交;

5.在任务计划中找到黑客所创建的任务计划(具有危险操作的任务计划),任务计划名为flag值提交。

6.黑客在系统某处中留下一个测试文件,请将该文件中内容作为flag值提交。

B-4任务四:数字取证(一)

*任务说明:仅能获取Server3的IP地址

1.黑客是通过上传页面进行上传木马,将上传页面找到,上传页面文件名作为flag值提交;

2.找到对应的木马后门,将木马文件名作为flag值提交;

3.查看木马文件,将木马文件的登录密码进行提交;

4.在任务计划中找到黑客所创建的任务计划(具有危险操作的任务计划),任务计划名为flag值提交;

5.找到任务计划所对应执行程序将分析代码将密码处作为flag值提交。

B-5任务五:数据分析(二,四,五)

*任务说明:仅能获取Server4的IP地址

1.使用Wireshark查看并分析Server4桌面下的capture.pcapng数据包文件,telnet服务器是一台路由器,找出此台路由器的特权密码,并将密码作为flag值提交;

2.使用Wireshark查看并分析Server4桌面下的capture.pcapng数据包文件,FTP服务器已经传输文件结束,将建立FTP服务器的数据连接的次数作为flag值提交;

3.使用Wireshark查看并分析Server4桌面下的capture.pcapng数据包文件,web服务器地址是192.168.181.250,将web服务器软件的版本号作为flag值提交;

4.使用Wireshark查看并分析Server4桌面下的capture.pcapng数据包文件,这些数据中有非常多的ICMP报文,这些报文中有大量的非正常ICMP报文,找出类型为重定向的所有报文,将报文重定向的数量作为flag值提交;

5.使用Wireshark查看并分析Server4桌面下的capture.pcapng数据包文件,这些数据中有ssh报文,由于ssh有加密功能,现需要将这些加密报文的算法分析出来,将ssh服务器支持的第一个算法的密钥长度作为flag值提交。

B-6任务六:数据分析(一)

*任务说明:仅能获取Server2的IP地址

1.使用Wireshark查看并分析Server2桌面下的capture.pcapng数据包文件,找出telnet服务器的用户名和密码,并将密码作为flag值提交;

2.使用Wireshark查看并分析Server2桌面下的capture.pcapng数据包文件,FTP服务器已经传输文件结束,将登陆服务器后的第一条指令作为flag值提交;

3.使用Wireshark查看并分析Server2桌面下的capture.pcapng数据包文件,web服务器地址是192.168.181.250, 其使用的脚本语言为php,将服务器使用php的版本号作为flag值提交;

4.使用Wireshark查看并分析Server2桌面下的capture.pcapng数据包文件,这些数据中有非常多的ICMP报文,其中有一个设备是路由器,IP地址为192.168.181.25,将路由器上主动发出的ping请求的数量作为flag值提交;

5.使用Wireshark查看并分析Server2桌面下的capture.pcapng数据包文件,这些数据中有ssh报文,由于ssh有加密功能,现需要将这些加密报文的算法分析出来,将ssh客户端支持的第一个算法的名称作为flag值提交。

B-7任务七:应急响应(三)

*任务说明:Server1用户名:administraotr,密码:123456

1.分析注册表,将黑客添加的启动项字符串作为flag值提交;

2.检查系统的常规启动项,将黑客设置的自启动恶意程序文件名作为flag值提交;

3.清除操作系统上存在漏洞的应用程序,将该应用程序所在的路径作为flag值提交;

4.在命令行界面中清除隐藏的管理员用户,将隐藏的管理员账户名称作为flag值提交;

5.清除黑客在系统上添加的Webshell木马,将连接木马的密码作为flag提交。

B-8任务八:应急响应(四,五)

*任务说明:仅能获取Server1的IP地址

1.黑客通过网络攻入本地服务器,在Web服务器的主页上外挂了一个木马链接,请你找到此链接并删除链接,将删除链接后的主页第一排标题栏显示的第三个单词,作为flag提交。

2. 黑客攻入本地服务器的数据库服务器,并添加了除admin以外的具有一个管理员权限的超级用户,请你找到此用户并删除用户,将此用户的密码作为flag提交。

3. 黑客攻入本地服务器,在本地服务器建立了多个超级用户,请你删除除了Administrator用户以外的其他超级管理员用户,在命令行窗口输入net user,将Administrator右边第一个单词作为flag提交。

4. 黑客修改了服务器的启动内容,请你删除不必要的启动内容,打开任务管理器的“启动”标签栏,将名称列中所有的名称作为flag提交。(提交形式:名称1,名称2,名称3)

5. 黑客在服务器某处存放了一个木马程序,请你找到此木马程序并清除木马。打开任务管理器的“进程”标签栏,将应用名称中的第三个单词作为flag提交。

B-9任务九:应急响应(一,二)

*任务说明:仅能获取Server3的IP地址

1.黑客通过网络攻入本地服务器,在Web服务器的主页上外挂了一个木马链接,请你找到此链接并删除链接,将删除链接后的主页第一排标题栏显示的第三个单词,作为flag提交;

访问靶机web界面,第三个就是flag

2.黑客攻入本地服务器的数据库服务器,并添加了除admin以外的具有一个管理员权限的超级用户,请你找到此用户并删除用户,将此用户的密码作为flag提交;

3.黑客攻入本地服务器,在本地服务器建立了多个超级用户,请你删除除了Administrator用户以外的其他超级管理员用户,在命令行窗口输入net user,将Administrator右边第一个单词作为flag提交;

在cmd或者计算机管理里面按照题目进行删除用户,删完之后,再次枚举用户得出flag

4.黑客修改了服务器的启动内容,请你删除不必要的启动内容,打开任务管理器的“启动”标签栏,将名称列中所有的名称作为flag提交;(提交形式:名称1,名称2,名称3)

Msconfig查看启动项

5.黑客在服务器某处存放了一个木马程序,请你找到此木马程序并清除木马。打开任务管理器的“进程”标签栏,将应用名称中的第三个单词作为flag提交。

B-10任务十:操作系统应急响应(三)

*任务说明:Server8用户名:administrator,密码:123456

1.将黑客成功登录系统所使用的IP地址作为flag值提交;

2.黑客成功登录系统后修改了登录用户的用户名,将修改后的用户名作为flag值提交;

3.黑客成功登录系统后成功访问了一个关键位置的文件,将该文件名作为flag值提交;

4.黑客对数据库进行了暴力破解,将最后一次暴力破解的时间作为flag值提交;

5.黑客在系统中隐藏了某个批处理文件,将该文件内容作为flag值提交。

B-11任务十一:内存取证(一,三,四)

*任务说明:仅能获取Server4的IP地址

1.从内存中获取到用户admin的密码并且破解密码,以flag{admin,password}形式提交(密码为6位);

  过程:

  1. volatility -f filename imageinfo                (获取OS)
  2. volatility -f filename --profile=OS hashdump    (获取用户名及密码hash)
  3. 利用john工具爆破hash,获得密码.

2.获取当前系统ip地址及主机名,以flag{ip:主机名}形式提交;

  过程:

  1. volatility -f filename imageinfo                (获取OS)
  2. volatility -f filename --profile=OS envars      (获取主机名)
  3. volatility -f filename --profile=OS netscan     (获取IP地址)

3.获取当前系统浏览器搜索过的关键词,作为flag提交;

  过程:

  1. volatility -f filename imageinfo                (获取OS)
  2. volatility -f filename iehistory                (获取浏览器搜索记录)

4.当前系统中存在挖矿进程,请获取指向的矿池地址,以flag{ip:端口}形式提交;

5.恶意进程在系统中注册了服务,请将服务名以flag{服务名}形式提交。

B-12任务十二:STEGA信息隐藏(二,三)

*任务说明:Server5用户名:administrator,密码:123456

1.找出文件夹1中的文件,将文件中的隐藏信息作为flag值提交;

2.找出文件夹2中的文件,将文件中的隐藏信息作为flag值提交;

3.找出文件夹3中的文件,将文件中的隐藏信息作为flag值提交;

4.找出文件夹4中的文件,将文件中的隐藏信息作为flag值提交;

5.找出文件夹5中的文件,将文件中的隐藏信息作为flag值提交。

B-13任务十三:Python代码分析(一,三)

*任务说明:仅能获取Server5的IP地址,在Server5服务器桌面找到flag.py文件并完成以下任务。

1.完善文件flag.py文件,填写该文件当中空缺的flag1字符串,并将改字符串作为flag提交;

2.完善文件flag.py文件,填写该文件当中空缺的flag2字符串,并将改字符串作为flag提交;

3.完善文件flag.py文件,填写该文件当中空缺的flag3字符串,并将改字符串作为flag提交;

4.完善文件flag.py文件,填写该文件当中空缺的flag4字符串,并将改字符串作为flag提交;

5.将完善好的文件执行,将执行成功后的回显内容作为flag值提交。

B-14任务十四:PHP代码分析(二)

*任务说明:仅能获取Server2的IP地址,在Server2服务器桌面找到PHP文件夹并完成以下任务。

1.分析PHP源代码找到会造成漏洞的危险函数1作为flag值提交;

2.分析PHP源代码找到会造成漏洞的危险函数2作为flag值提交;

3.分析PHP源代码找到会造成漏洞的危险函数3作为flag值提交;

4.分析PHP源代码找到会造成漏洞的危险函数4作为flag值提交;

5.分析PHP源代码找到会造成漏洞的危险函数5作为flag值提交。

B-15任务十五:Windows操作系统渗透测试(一,二,四,五)

*任务说明:仅能获取Server5的IP地址

1.通过本地PC中渗透测试平台Kali对服务器场景Server5进行系统服务及版本扫描渗透测试,并将该操作显示结果中445端口对应的服务状态信息作为flag值提交;

Nmap -sV -p445 ip

  1. 找到网络适配器信息,将首选DNS服务器地址作为flag值提交;

17-010p/e 渗透进去然后查看

3.找到桌面上111文件夹中后缀为.docx的文件,将文档内容作为flag值提交;

渗透进去爆破密码直接查看

  1. 找到回收站内的文档,将文档内容作为flag值提交;

在上一题基础上面做

5.获取系统最高账户管理员的密码,将密码作为flag值提交。

  爆破hash值得出密码

B-16任务十六:Linux操作系统渗透测试(一,二,四,五)

*任务说明:仅能获取Server4的IP地址

1.通过本地PC中渗透测试平台Kali对服务器场景Server4进行系统服务及版本扫描渗透测试,并将该操作显示结果中21端口对应的服务版本信息字符串作为flag值提交;

Nmap -sV -p21 ip

2.找到/var/www目录中的图片文件,将文件名称作为flag值提交;

通过枚举漏洞并渗透进去,然后查看文件名称

3.找到/var/www目录中的图片文件,将图中的英文单词作为flag值提交;

通过枚举漏洞并渗透进去,然后查看文件内容

4.找到/home/guest目录中的txt文件,将文件内容作为flag值提交;

通过枚举漏洞并渗透进去,然后查看文件内容

5.找到/root目录中的txt文件,将文件内容作为flag值提交。

通过枚举漏洞并渗透进去,然后查看文件内容

B-17任务十七:Web渗透测试

*任务说明:仅能获取Server5的IP地址

1.获取PHP的版本号作为flag值提交;(例如:5.2.14)

使用扫描工具,nikto nmap sqlmap进行探测扫描

2.获取MySQL数据库的版本号作为flag值提交;(例如:5.0.22)

3.获取系统的内核版本号作为flag值提交;(例如:2.6.18)

4.获取网站后台管理员admin用户的密码作为flag值提交;

5.找到/root目录中的txt文件,将文件内容作为flag值提交。

B-18任务十八:缓冲区溢出渗透测试(一,二,三,四)

*任务说明:仅能获取Server9的IP地址,Server9 FTP服务器用户名:admin,密码:123456

1.从靶机服务器场景FTP服务器中下载文件BO.py,编辑该Python程序文件,使该程序实现对Server9进行缓冲区溢出渗透测试的功能,填写该文件当中空缺的F1字符串,将该字符串作为flag值提交;

2.继续编辑命名为BO.py的Python程序文件,使该程序实现对Server9进行缓冲区溢出渗透测试的功能,填写该文件当中空缺的F2字符串,将该字符串作为flag值提交;

3.继续编辑命名为BO.py的Python程序文件,使该程序实现对Server9进行缓冲区溢出渗透测试的功能,填写该文件当中空缺的F3字符串,将该字符串作为flag值提交;

4.继续编辑命名为BO.py的Python程序文件,使该程序实现对Server9进行缓冲区溢出渗透测试的功能,填写该文件当中空缺的F4字符串,将该字符串作为flag值提交;

5.继续编辑命名为BO.py的Python程序文件,使该程序实现对Server9进行缓冲区溢出渗透测试的功能,成功渗透后找到Server9回收站内的文档,将文档内容作为flag值提交。

B-19任务十九:远程代码执行渗透测试(一,三,四,五)

*任务说明:仅能获取Server10的IP地址,Server10 FTP服务器用户名:admin,密码:123456

1.从靶机服务器场景FTP服务器中下载文件RCE.py,编辑该Python程序文件,使该程序实现对Server10进行远程代码执行渗透测试的功能,填写该文件当中空缺的F1字符串,将该字符串作为flag值提交;

2.继续编辑命名为RCE.py的Python程序文件,使该程序实现对Server10进行远程代码执行渗透测试的功能,填写该文件当中空缺的F2字符串,将该字符串作为flag值提交;

3.继续编辑命名为RCE.py的Python程序文件,使该程序实现对Server10进行远程代码执行渗透测试的功能,填写该文件当中空缺的F3字符串,将该字符串作为flag值提交;

4.继续编辑命名为RCE.py的Python程序文件,使该程序实现对Server10进行远程代码执行渗透测试的功能,填写该文件当中空缺的F4字符串,将该字符串作为flag值提交;

5.继续编辑命名为RCE.py的Python程序文件,使该程序实现对Server10进行远程代码执行测试的功能,成功渗透后找到Server10桌面上的文档,将文档内容作为flag值提交。

B-20任务二十:MS15034漏洞扫描与利用(三)

*任务说明:仅能获取Server10的IP地址

1.在MSF工具中用search命令搜索MS15034HTTP.SYS漏洞拒绝服务攻击模块,将回显结果中的漏洞披露时间作为flag值提交;(如:2015-10-16)

flag: 2015-10-16

2.在MSF工具中调用MS15034HTTP.SYS漏洞的辅助扫描模块,将调用此模块的命令作为flag值提交;

flag: use 或者 use auxiliary/scanner/http/ms15_034_http_sys_memory_dump

3.使用set命令设置目标IP,并检测漏洞是否存在,运行此模块,将回显结果中倒数第2行的最后一个单词作为flag值提交;

flag: complete

4.在MSF工具中调用并运行MS15034HTTP.SYS漏洞的拒绝服务攻击模块,将运行此模块后回显结果中倒数第1行的最后一个单词作为flag值提交;

flag: completed

5.进入靶机在IIS网站下的编辑输出缓存设置中禁止启用内核缓存,再次运行MS15034HTTP.SYS漏洞的拒绝服务攻击模块,运行此模块并将回显结果中倒数第2行的最后一个单词作为flag值提交。

flag: complete

B-21任务二十一:MS12020漏洞扫描与利用(三,五)

*任务说明:仅能获取Server9的IP地址

1.在MSF工具中用search命令搜索MS12020 RDP拒绝服务攻击模块,将回显结果中的漏洞披露时间作为flag值提交;(如:2012-10-16)

flag: 2012-03-16

2.在MSF工具中调用MS12020 RDP拒绝服务漏洞的辅助扫描模块,将调用此模块的命令作为flag值提交;

flag: use 或者 use auxiliary/scanner/rdp/ms12_020_check

3.使用set命令设置目标IP,并检测靶机是否存在漏洞,运行此模块,将回显结果中倒数第2行的最后一个单词作为flag值提交;

flag: complete

4.在MSF工具中调用并运行MS12020 RDP拒绝服务漏洞的攻击模块,将运行此模块后回显结果中倒数第1行的最后一个单词作为flag值提交;

flag: completed

5.进入靶机关闭远程桌面服务,再次运行MS12020 RDP拒绝服务漏洞的攻击模块,运行此模块并将回显结果中倒数第2行的最后一个单词作为flag值提交。

flag: Unreachable

B-22任务二十二:MS17010漏洞扫描与利用(四,五)

*任务说明:仅能获取Server8的IP地址

1.通过本地PC中渗透测试平台Kali对靶机场景Server8进行系统服务及版本扫描渗透测试,以xml格式向指定文件输出信息(使用工具Nmap),将以xml格式向指定文件输出信息必须要使用的参数作为flag值提交;

flag: -oX

2.在本地PC的渗透测试平台Kali中,使用命令初始化MSF数据库并将此命令作为flag值提交;

flag: msfdb init

3.在本地PC的渗透测试平台Kali中,打开MSF,使用db_import将扫描结果导入到数据库中,并查看导入的数据,将查看该数据要使用的命令作为flag值提交;

flag: hosts

4.在MSF工具中用search命令搜索搜索MS17010漏洞利用模块,将回显结果中的漏洞公开时间作为flag值提交;(如:2017-10-16)

flag: 2017-03-14

5.在MSF工具中调用MS17010漏洞攻击模块,并检测靶机是否存在漏洞,将回显结果中最后一个单词作为flag值提交。

flag: completed

B-23任务二十三:MS08067漏洞扫描与利用(四,五)

*任务说明:仅能获取Server9的IP地址

1.通过本地PC中渗透测试平台Kali对靶机场景Server9进行系统服务及版本扫描渗透测试,以xml格式向指定文件输出信息(使用工具Nmap),将以xml格式向指定文件输出信息必须要使用的参数作为flag值提交;

flag: -oX

2.在本地PC的渗透测试平台Kali中,使用命令初始化MSF数据库并将此命令作为flag值提交;

flag: msfdb init

3.在本地PC的渗透测试平台Kali中,打开MSF,使用db_import将扫描结果导入到数据库中,并查看导入的数据,将查看该数据要使用的命令作为flag值提交;

flag: hosts

4.在MSF工具中用search命令搜索搜索MS08067漏洞利用模块,将回显结果中的漏洞公开时间作为flag值提交;(如:2017-10-16)

flag: 2008-10-28

5.在MSF工具中调用MS08067漏洞攻击模块,并检测靶机是否存在漏洞,将回显结果中最后一个单词作为flag值提交。

flag: completed

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

2020年网络安全国赛解析(仅个人想法) 的相关文章

  • 我们可以在 Bash 脚本中使用 PHP 吗?

    我有一个 bash 脚本abcd sh bin sh for i in seq 8 do ssh w i uptime ps elf grep httpd wc l free m mpstat done pid sleep 1 kill 9
  • 如果目录不存在,有没有办法让 mv 创建要移动到的目录?

    因此 如果我在主目录中并且想将 foo c 移动到 bar baz foo c 但这些目录不存在 是否有某种方法可以自动创建这些目录 以便你只需要输入 mv foo c bar baz 一切都会顺利吗 似乎您可以将 mv 别名为一个简单的
  • bash "&" 不打印 "[1]+ Done "

    我在 bashrc 中调用一个脚本来打印打开终端时收到的新消息数 我希望该调用在访问网络时是非阻塞的 有时需要几秒钟 这意味着我无法使用终端直到完成 但是如果我输入 mailcheck 在我的 bashrc 中 它工作正常 但然后打印一个空
  • Linux mremap 不释放旧映射?

    我需要一种方法将页面从一个虚拟地址范围复制到另一个虚拟地址范围 而无需实际复制数据 范围很大 延迟很重要 mremap 可以做到这一点 但问题是它也会删除旧的映射 由于我需要在多线程环境中执行此操作 因此我需要旧映射能够同时使用 因此稍后当
  • VSCODE 在 Linux 上不适用于我

    刚刚了解 VSCODE 很高兴尝试一下 我下载 解压并运行可执行文件 我得到 Code 2183 0429 201254 ERROR browser main loop cc 170 Running without the SUID san
  • 如何获取 bash 中从 Ping 接收到的数据包的百分比?

    当 ping 主机时 我希望输出仅显示收到的数据包 已发送 5 个 的百分比 我想我需要使用grep不知怎的 但我不知道如何 我是 bash 编程的新手 这是我所在的地方 ping c 5 q host grep grep 中应该包含什么
  • SVN 不断提示我输入密码并拒绝缓存我的凭据

    环境 Eclipse Indigo Ubuntu 11 04 Subclipse 1 6 SVN 客户端 Subclipse RabbitVCS 我通过 svn ssh 连接 我的网址如下所示 svn ssh 我的名字 我的域名 路径 我可
  • /usr/bin/as:无法识别的选项“-EL”

    因此 在为我的1plus手机编译android内核时 经过3天的多次尝试 我放弃了并尝试在这里询问是否有人以前遇到过这个问题 这个错误对我来说有点模糊 但我觉得问题来自于我最近对 GNU Linux 发行版 Gentoo 的更改 它在不应该
  • Docker 容器可以访问 DNS,但无法解析主机

    我在运行 docker 容器时遇到一个有趣的问题 突然间 我无法从容器内解析 DNS 这是一个概要 一切都没有解决 apt get pip 一次性 ping 容器等正在运行docker run it dns 8 8 8 8 ubuntu p
  • 对于客户端服务器程序,并行接收多个客户端连接请求的最佳方法是什么?

    该程序是在 Linux 上用 C 语言开发的客户端服务器套接字应用程序 每个客户端都连接到一个远程服务器并将其自身记录为在线 在任何给定时间点很可能有多个客户端在线 所有客户端都尝试连接到服务器以将自己记录为在线 忙碌 空闲等 那么服务器如
  • 检查 Linux 中给定进程的打开 FD 限制

    我最近有一个 Linux 进程 泄露 了文件描述符 它打开了文件描述符 但没有正确关闭其中一些文件描述符 如果我对此进行监控 我就可以提前得知该过程已达到其极限 有没有一种很好的 Bash 或 Python 方法来检查 Ubuntu Lin
  • Python 线程与 Linux 中的多处理

    基于此question https stackoverflow com questions 807506 threads vs processes in linux我假设创建新流程应该几乎和创造新线程在Linux中 然而 很少的测试显示出截
  • mod_perl 无法看到 /tmp 中的文件

    我有一些 mod perl 代码试图访问 tmp 下的文件 但它抛出 没有这样的文件或目录 错误 我在代码中添加了一个 ls al tmp 来查看 Perl 在目录中看到的内容 它只给了我 和 drwxrwxrwt 2 root root
  • 如何从powershell获取主机名?

    我如何获得hostname https stackoverflow com q 42014215 262852 for dur来自 powershell PS home thufir powershell gt PS home thufir
  • 如何更改Linux服务器中的MySQL表名不区分大小写?

    我正在开发一个旧网站 该网站曾经托管在 Apple 服务器上 当它迁移到新的 Linux 服务器时 它停止工作 我很确定这是因为 php 脚本中使用的所有 MySQL 查询对于表名都有不同的大小写组合 我不知道为什么原始开发人员在创建表名或
  • 使用 xargs 时如何获取退出代码(并行)

    我制作了一个用于启动并行 rsync 进程的脚本 bin bash LIST 1 DEST DIR 2 RSYNC OPTS 3 echo rsyncing From SRC DIR To DEST DIR RSYNC OPTS RSYNC
  • Git - 致命:无法获取当前工作目录?

    When I git clone从回购协议中 我得到 fatal Could not get current working directory No such file or directory 我该怎么办 我检查了服务器并发现 git文
  • 带有接收器的 boost_log 示例无法编译

    我正在考虑将 boost log 用于一个项目 一开始我就遇到了以下问题 我在以下位置找到的升压日志示例 http www boost org doc libs 1 54 0 libs log example doc tutorial fi
  • 如何像C99一样使用make和编译?

    我正在尝试使用 Makefile 编译 Linux 内核模块 obj m main o all make C lib modules shell uname r build M PWD modules clean make C lib mo
  • python 的 fcntl.flock 函数是否提供文件访问的线程级锁定?

    Python 的 fcnt 模块提供了一种名为 flock 1 的方法来证明文件锁定 其描述如下 对文件执行锁定操作op 描述符 fd 文件对象提供 fileno 方法被接受为 出色地 请参阅 Unix 手册集群 2 了解详情 在某些系统上

随机推荐

  • Web 前端开发技术 ——html

    Web 前端开发技术 html 文章目录 Web 前端开发技术 html 一 html 文件结构 二 文本 三 图片 四 音频和视频 五 超链接 六 表单 七 列表 八 表格 九 语义标签 一 html 文件结构 html的所有标签为树型结
  • Mybatis-Plus代码自动生成器

    代码自动生成器 public class EasyCode public static void main String args 需要构建一个 代码自动生成器 对象 AutoGenerator mpg new AutoGenerator
  • Qt程序的发布

    QT相关技术问题 一 QT程序的发布 1 在程序中运行debug或者release 占用较少的内存 之后 复制release中的exe文件 放在新的文件夹中 比如 我的第一个QtAPP发布 2 部署环境设置 部署依赖 找到安装目录下的win
  • Lattice学习总结中……

    1 Lattice官网 http www latticesemi com 2 需要注册一下 sign in 按要求填写一下 3 注册完之后 在官网的首页 Products 下载Lattice的设计环境 ispLEVER classic 4
  • C++ STL --哈希表

    目录 1 unordered系列关联式容器 1 1 unordered map 1 1 1 unordered map的文档介绍 1 1 2 unordered map的接口说明 1 2 unordered set 1 3 在线OJ 2 底
  • java grid动态行合并,CSS Grid布局:合并单元格布局

    CSS Grid布局 网格单元格布局 一文中通过一些简单的实例介绍了如何给容器定义网格 并且怎么使用网格线或者网格区域来实现单元格这样的简单的布局 在文章结尾之处也提到过 这样的单元格如同表格一样 仅仅一个个独立的单元格是无法满足一些复杂的
  • nestjs 优秀的ORM框架sequelize操作数据库

    奉上最新代码 nestjs服务demo代码 gitee地址 github地址 nodejs的ORM sequelize 笔者在使用koa2开发后端服务的时候用的ORM框架是sequelize 觉得挺好用的 也做了分享 node从入门到放弃系
  • 安卓psp模拟器哪个好_更完美!安卓PSP模拟器PPSSPP 0.9.9发布

    PConline 资讯 最好的安卓PSP模拟器PPSSPP 0 9 9新版发布下载了 PPSSPP是最强的PSP模拟器 在PC 安卓和iOS上均有对应版本 笔者曾经简单介绍过PPSSPP安卓版的用法 详情可以点此查看PPSSPP教程 现在
  • HiveSQL:求累计访问量

    数据 userId visitDate visitCount u01 2017 1 21 5 u02 2017 1 23 6 u03 2017 1 22 8 u04 2017 1 20 3 u01 2017 1 23 6 u01 2017
  • 10个常见的Redis面试"刁难"问题

    导读 在程序员面试过程中Redis相关的知识是常被问到的话题 作为一名在互联网技术行业打击过成百上千名的资深技术面试官 本文作者总结了面试过程中经常问到的问题 十分值得一读 作者简介 钱文品 老钱 互联网分布式高并发技术十年老兵 目前任掌阅
  • docker搭建测试(项目)管理平台jira

    1 下载镜像 使用docker下载jira和mysql的镜像 docker pull cptactionhank atlassian jira software docker pull mysql 5 6 docker images 查看是
  • Font shape `OMX/cmex/m/n‘ in size <10.53937> not available (Font) size <10.95> substituted.

    Latex在写公式时 报如下错误 Font shape OMX cmex m n in size lt 10 53937 gt not available Font size lt 10 95 gt substituted 解决方案 在 b
  • Web指纹识别技术研究与优化实现(CMS)

    本文通过分析web指纹的检测对象 检测方法 检测原理及常用工具 设计了一个简易的指纹搜集脚本来协助发现新指纹 并提取了多个开源指纹识别工具的规则库并进行了规则重组 开发了一个简单快捷的指纹识别小工具TideFinger 并实现了一套在线的指
  • python爬虫实践-01-携程酒店评论的爬取

    0 关键 携程网其最大的特点就是 基本上所有的有效数据都是通过Ajax异步请求获取的 本博客的主要内容为 构造Ajax请求 获得返回的reviews数据 由于返回的数据为JSON格式 很好分析 判定是否爬完酒店评论 直接获取评论数目 想要通
  • Dorado下拉框多选(ListDropDown)

    最终样式如下图 这里是通过ListDropDown下拉框做出的效果 1 在ListDropDown的Entity属性添加下拉内容 并且设置红色框的属性为false 该控件的onClose事件 var value arg selectedVa
  • ESP32-C3 学习测试 蓝牙 篇(四、GATT Server 示例解析)

    了解了蓝牙 GATT 相关概念 趁热打铁 分析一下官方示例 GATT Server 的应用程序架构 目录 前言 一 GATT Server 示例分析 1 1 初始化 1 2 回调函数 gatts event handler gap even
  • 软件技术基础知识忏悔录C#&.NET篇(一)

    为何开始 人已是大三之年 虽是身在985 心里却没有半分985的底气 自从大二分流以来 自己几乎是没再系统的学过什么 除了几位知识还算渊博的老师教了较为详细的数据库 数据结构的知识之外 其他老师大抵都是迷迷糊糊的念些大家都知道的大条话 然后
  • 开源许可协议:GPL、LGPL、AGPL、MPL和BSD、MIT、Apache

    概述 一 开源许可证的分类 开源许可证分为2种类型 宽松型和著作权型 1 宽松型 Permissive 该类许可证往往只要求被许可方保留原作品的版权信息 对用户施加的限制较少 衍生软件可以成为私有软件 如Apache MIT BSD系列许可
  • 基于Session实现登录流程

    流程一 发送短信验证码 用户在提交手机号后 会校验手机号是否合法 如果不合法 则要求用户重新输入手机号 如果手机号合法 后台此时生成手机号对应的验证码 后台先得到验证码 同时将验证码保存到session中 然后再通过短信的方式 测试中输出到
  • 2020年网络安全国赛解析(仅个人想法)

    A 1任务一登录安全加固 请对服务器Log Web Data 按要求进行相应的设置 提高服务器的安全性 1 密码策略 Log Web Data a 最小密码长度不少于8个字符 windows 打开本地安全策略 开始菜单 管理工具 管理 本地