2023hvv
前文对的,没错好久没写文章了😊,这几个月事情也挺多,但博主一直都在,下面简单总结一下今年的护网吧。有什么不对的还望多多指正。什么是护网大家可上网搜一下,敏感信息就不详细展开(就比如我们所说的练兵千日,用兵一时,我们的军事演练就是为上战场做准备,hvv亦是如此)因此正文均用hvv代替。因为我面试的是蓝队,对应的也就是红队,一攻一守,因此BT和RT分别是这两个队伍的英文第一个缩写
前期从我知道hvv到真正了解hvv还是从7月开始因为刚结束一场比赛,在看到“修勾“师傅的hvv录用的时候开始准备面试,这期间他也给与我不少帮助。当然面试题一定要多看。从郑州比完赛之后,我和我的伙伴们继续留校学习了,没错在“深情大队”住了半个月左右,后面我在训练室住了12天,(打地铺,蚊子倒是喂饱了,后面才用上帐篷)那几天真是双重折磨,面试都是等通知,根据往年来说这个时间段已经是最后几天了,我也挺着急,当时就想着今年能过就过面不上就算了,也不枉我这些天的打地铺
出发进京🚗在经历了十多天的等待,终于在8月1号这天通过了面试,地点是北京,一上来就是首都吗?当时想着去了之后住宿要高消费啊,“北京挣钱北京花,一分别想带 ...
愚人杯-wp
这个月参加了几个ctf比赛,有些题目wp不方便,刚好最近有个”愚人杯”。欢乐为主,0day为辅😀
MISC 奇怪的压缩包下载之后是一个需要密码的压缩包,暴力破解并没有效果,怀疑是伪加密,用010查看一下把09改成00以及末尾然后得到一个不完善的带字母图片,然后改一下高度然而并不是正确答案,在最后发现PK,以及key,这是一个压缩包,分离一个压缩包,把这个key base一下得到密码,又是一个图片还是改一下高度,就得到了falg
WEB easy_signin主打的就是愚人啊,看到url,有个img传参,而且是个明显的base编码,解码之后是face.png这里随便输入看到报错GET获取,Base解码后读取,这里把index.php进行base编码后传入,使其base编码读取,然后在进行解码就可以得到flag了
CRYPTO easy_base其实密码题也挺有意思,怎奈很多的python,这次看了一下,不难。题目是一个base直接从16>32>64就行了
ctf-web
第一题没错开头就是文件上传,web的题还有正儿八经的文件上传,习惯用bp抓一手easyupload1.0上传jpg/png该包php然后链接。这是个陷阱,flag不对,再找找,发现在html的目录下面还存在.git的文件,将文件翻一翻找一找,发现了一个phpinfo的文件,怀疑flag存放在phpinfo中,利用刚才上传的shell,输出一下phpinfo页面就好了
第二题Easyupload2.0
文件上传,抓包,该后缀,上传即可使用蚁剑链接
第三题easyupload3.0
这道题就是那个文件上传靶场上面的第四关,我说怎么那么熟悉随便整出来报错,看返回什么东西,Apache/2.47(ubuntu)先创建一个.htaccess的文件123<FilesMatch "flag.jpg">SetHandler application/x-httpd-php</FilesMatch>这样的话对文件名包含“flag.jpg”字符串的文件进行解析.且等会上传的时候,传一个名字为flag.jpg的一句mm就行了
第四题WebFTP
爆破出账号密码,是个 ...
GET-POST
在做题目的时候,经常见到POST和GET请求他是http协议的常见请求方式:那该如何区分呢?字面上理解GET是从服务器上面获取数据,POST是向服务器传送数据具体是有以下区别:12345:GET请求方式是把参数放在url里边的,Post请求的参数,是在请求体里的:GET请求是可以被浏览器缓存的,而post缓存不能被缓存:GET请求的参数是在url里边,因此url会受限制,而post长度并没有限制。:GET请求的参数放到url里边,安全性比较差,而post请求参数是在body当中,安全相对来说较好一点。:GET请求可以直接通过浏览器访问,支持刷新和后退,而post请求不能直接使用浏览器访问,刷新后数据要重新发送举个web的题型123456789101112131415<?php highlight_file('index.php'); include("flag.php"); $id=$_POST['id']; $json=json_decode($_GET['json'],true); if ($id ...
php类型转换
PHP 的主要数据类型包括字符串、整型、浮点型、布尔型、数组、对象、资源和空值。变量的数据类型:PHP 是一种动态类型语言,变量的数据类型在运行时可以根据变量的值自动推断。类型转换:PHP 支持在不同数据类型之间进行转换,例如将整型转换为字符串,或者将字符串转换为布尔型。
数据类型转换程序为什么需要转换类型,讲一个经常遇到的例子:你的网站内容比较多,有分页的功能;你在 url 传递一个变量 page 作为表示当前页,但是因为 url 是 get 方式传递的(显式的); 非法用户可能会篡改,你就需要将 page 变量强制转换成整型(Integer),保证程序的安全和良好体验性。字符串转整型(Integer)首先了解以下几个类型字符串(String):字符串是一种表示文本数据的类型,可以使用单引号或双引号来定义。在 PHP 中,字符串可以进行连接、截取、查找和替换等操作。
整型(Integer):整型是一种表示整数的类型,可以使用十进制、八进制或十六进制表示。在 PHP 中,整型可以进行加减乘除、取模、位运算等操作。
浮点型(Float):浮点型是一种表示带小数的数字的类型,可以使用小数点 ...
ctf-PHP审计练习
第一题一个ctf的web的题,包括了php方面知识。下面我们就对其进行分析1show_source() 函数对文件进行语法高亮显示。然后下面有一个include,这里说一下,引用文件的方法有两种:require 及 include。两种方式提供不同的使用弹性。这里的include也就是引用require 的使用方法如 require(“MyRequireFile.php”); 。这个函数通常放在 PHP 程序的最前面,PHP 程序在执行前,就会先读入 require 所指定引入的文件,使它变成 PHP 程序网页的一部份。常用的函数,亦可以这个方法将它引入网页中。include 使用方法如 include(“MyIncludeFile.php”); 。这个函数一般是放在流程控制的处理部分中。PHP 程序网页在读到 include 的文件时,才将它读进来。这种方式,可以把程序执行时的流程简单化。他们两个的用途是完全一样的,不一定非得哪个放在最前面哪个放在中间。他们最根本的区别在于错误处理的方式不一样。require一个文件存在错误的话,那么程序就会中断执行了,并显示致命错误include一 ...
php单双引号
在php中单引号和双引号的区别:在PHP中,字符串的定义可以使用英文单引号’ ‘,也可以使用英文双引号” “。123456781一般情况下,两者是通用的.但双引号内部变量会解析,单引号不解析.2双引号执行转译字符,单引号不转译 \n \r \t \3它执行转译 \\ 和 \ '4能使用单引号就不适合双引号,因为单引号比双引号效率快5如果是字符串和变量一起使用的时候,用" . " 来连接6双引号里面插入单引号,单引号里面插入变量,变量会解析 " '$a' "7如果双引号里面插入变量的时候请在后面加上空格或者 , 号 ,当变量和字符串想在一起的时候,用 " . " 可进行拼接PHP允许我们在双引号串中直接包含字串变量。而单引号串中的内容总被认为是普通字符,因此单引号中的内容不会被转义效率更高。例如如果是单引号就会输出 $name 也就是不解析,直接输出了转义字符 “ \ ”的作用:去除PHP赋予某些字符的特殊含义转义字符的用处:1:将普通字符转为特殊用途,如后退键,回车键等。2:用来将特殊意义 ...
应急响应
打开就有很多关卡
Js劫持刚开始进入了一个二手交易市场,等待一会儿,自动跳转一个url复制它就是flag记住去除后面的斜杠,就可以提交了
黑客首次webs hell通过find命令查找所有后缀为php的文件,然后看一看有哪些是可疑的第二种直接我们将网站备份下来用D盾扫描放到d盾扫描后门找到了一句话木马1QjsvWsp6L84Vl9dRTTytVyn5xNr1
黑客首次攻击查看日志/var/log/nginx/access.log看到了首次攻击的时间信息
黑客服务器信息首先查看进程ps aux 查看进程发下很多1.sh然后查看一下,这是脚本?打开看一下此时发现了IP以及端口49.232.241.253:8888
黑客的webshell2在这里一直找,在img文件夹里面发现一个php打开看一下当然也有用工具的比这个方便哪个web日志取证工具,链接: 取证1234#赋予权限chmod +x LogForensics.pl#启用分析./LogForensics.pl -file /var/log/nginx/access.log -websvr nginx然后进入日志路径查看/var ...