前言:
靶场链接:https://kalmarc.tf/challenges
难度太大了根本写不出来参考大佬的题解最后复盘出来的
原文链接:https://ireland.re/posts/KalmarCTF_2024/
复盘题解Ez ⛳ v2题目描述
Caddy webserver is AWESOME, using a neat and compact syntax you can do a lot of powerful things, e.g. wanna know if your browser supports HTTP3? Or TLS1.3? etc
Caddy web服务器非常棒,使用简洁紧凑的语法可以做很多强大的事情,例如,想知道你的浏览器是否支持HTTP3?或者TLS1.3?等等。
Flag is located at GET /$(head -c 18 /dev/urandom | base64) go fetch it.
Flag 位于GET /$(head -c 18 /dev/urandom ...
施工中
Apache2.0-2.2版本存在个漏洞 CE-2012-0053:
攻击者可通过向网站植人超大的Cookie,令其HTTP头超过Apache的LititRequestFieldSize (最大请求长度,4192字节),使得Apache返回400错误,状态页中包含了HttpOnly 保护的Cookie。
core - Apache HTTP Server 版本 2.4
Apache解析配置漏洞\多后缀名解析配置漏洞解析配置漏洞简介此漏洞实际为人为的错误配置导致的漏洞,与Apache本身无关。
Apache对于多后缀文件的处理规则是:Files with Multiple Extensions-mod_mime
对应的翻译
元数据指扩展名映射到关于语言、内容类型、字符集或编码的信息 原文: metadata (language, content type, character set or encoding) 文件可以有多个扩展名;扩展名的顺序通常是无关紧要的。例如,如果文件 welcome.html.fr 映射到 ...
施工中
XSS-LAB题解level1观察playroad与页面
1/level1.php?name=test
页面内容
12欢迎来到level1欢迎用户test
尝试在name=后插入xss语句<script>alert(1)</script>,即
1/level1.php?name=<script>alert('heiheihei')</script>
成功触发XSS,进入下一关
level2中间存在个搜索框,尝试直接写入语句<script>alert(1)</script>,查看服务端处理后的页面源代码
12345<h1 align=center>欢迎来到level2</h1><h2 align=center>没有找到和<script>alert('heiheihei')</script>相关的结果.</h2><center><form act ...
施工中
CSP绕过内容安全策略(Content-Security-Policy,简称CSP)
内容安全策略 (CSP) 被认为是一种浏览器技术,主要用于防御跨站点脚本 (XSS) 等攻击。内容安全策略为白名单策略,通过定义和详细说明浏览器可以安全地加载资源的路径和源,不加载除Content-Security-Policy以外的内容
使用 CSP的方式
使用 Content-Security-Policy HTTP 头
在html中添加入meta标签
1<meta http-equiv="Content-Security-Policy" content="script-src 'self'; object-src 'none'; style-src cdn.example.org third-party.org; child-src https:">
详细介绍:Content-Security-Policy (CSP) - HTTP 中文开发手册 - 开发者手册 - 腾讯云开发者社区 ...
施工中
概述什么是文件上传漏洞文件上传漏洞是指由于对用户文件上传部分的控制不足或者处理缺陷,而导致的用户可以向服务器上传恶意文件并进行执行,后获得执行服务端命令的能力。这里上传的文件可以是木马,病毒,恶意脚本或者WebShell等。
产生文件上传漏洞的原因
不充分的文件验证:如果应用程序未能正确验证上传文件的类型(如MIME类型或文件扩展名)和内容,攻击者可能会上传执行恶意代码的文件。
不安全的文件存储:如果上传的文件存储在可通过Web直接访问的位置,且文件名可预测或未经过适当处理,攻击者可能会执行上传的恶意文件。
未对权限进行限制:权限上没有对于上传的文件目录设置不可执行权限。
例子CTFHUB-技能树-WEB-文件上传-无验证
因为在上传文件后无验证文件信息以及设置动态脚本不可被执行,因此便可直接上传远程木马文件,
查看图片
上传后访问此网站路径下的/upload/shell.php发现是空白界面,说明php文件可以被执行,此时通过冰蝎进行远程连接
查看图片教程
...
XSS简介:动态站点会受到一种名为“跨站脚本攻击”(Cross Site Scripting,缩写成XSS)的威胁,恶意攻击者会在 Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。跨站脚本攻击允许恶意用户将代码注入网页,其他用户在浏览网页时会受到影响,恶意用户利用xss 代码攻击成功后,可能得到很高的权限、私密网页内容、会话和cookie等各种内容
XSS的分类:1、反射型(非持久化) (1)原理
反射型xss又称非持久型xss。发出请求时,此类XSS代码出现在URL中,作为输入提交到服务器端,XSS代码被服务器端解析后传回给浏览器,后解析执行XSS代码。
(2)攻击方式
攻击者将包含xss代码的恶意链接发送给目标用户。当其他用户访问该链接时,服务器接受该用户的URL中参数的请求并进行处理,后xss代码被服务器发送给其他用户的浏览器,触发xss漏洞
2、存储型(持久化) (1)原理
存储型XSS,提交的代码会存储在服务器端,其他用户请求该页面时会触发xss漏洞,无需访问攻击者的特定链 ...
CTF
未读布尔盲注介绍构造SQL语句,利用and,or等关键字来其后的语句 true 、 false使web页面返回true或者false,从而达到注入的目的来获取信息
使用条件:适用于页面没有回显字段(不支持联合查询),且web页面返回True 或者 false类似的结果(例如:登录成功、)
注意事项:
前面参数在数据库无结果时,拼接语句使用关键词or
前面参数在数据库有结果时,拼接语句使用关键词and
另建议使用脚本
注入使用函数1.substr()/substring()函数
substr()/substring()函数:用来截取数据库某个字段中的一部分。
1substr(string,start开始位置,length截取长度) #语法
参数
string:必选,数据库中需要截取的字段
start:必选。正数,从字符串指定位置开始截取;负数,从字符串结尾指定位置开始 截取;0,在字符串中第一个位置开始截取。
length:可选,需要截取的长度。缺省。即截取到结束位置
2.ascii()函数
ascii()函数:返回字符串str的最左边的数值。
1ascii(st ...
联合查询介绍联合查询语句:
1select a from b union select c from d where e;
使用条件:页面对查询语句有回显查询数据
注意事项:
使用联合查询注入时,位于union前的语句不要出现查询的结果(后端只选择查询结果第一行的情况,若前一部分可以被查询,则联合查询的部分不会回显)
若前部分有结果,可在每次的union查询后添加语句limit n,1(n根据题目实际进行切换)起到回显联合查询结果的作用
注:limit num1,num2的作用为从第num1行开始显示num2行内容
所需函数1.concat()函数
concat()函数:将多个不同字段的字符串连接成一个字符串。
1concat(str1,str2) #语法
注意:返回结果为连接参数产生的字符串,如果有任何一个参数为null,则返回值为null。
2.group_concat()函数
group_concat() 将多个同个字段的字符串连接成一个字符串。
1group_concat( [distinct] 要连接的字段 [order by 排序字段 asc/desc] ...