SQL 注入 约有如下 13 种: Boolean 盲注 与时间盲注类似,但是用于有明显回显情况 Union 注入 最常见的注入方式之一 1' union select 1,2,database () --+ 文件读写 select '' into outfile '/var/www/c.php' --+ 报错注入 floor ()、extractvalue ()、updatexml ()、geometrycollection ()、multipoint ()、polygon ()、multipolygon ()、linestring ()、multilinestring ()、exp () 时间盲注 sleep () REGEXP 正则匹配 PCRE 绕过:union/'+'a…
由于换源需求过多,又不想每一次都上网查,于是有此博客记录不同系统换源过程 PS:为什么不能有一键换源脚本呢 ...
建议使用新版【CTFd】靶场安装与配置(同时支持 Whale+Owl+AWD 的 Docker 一键配置版 v2) CTFd 是 githbu 上开源的 ctf 靶场之一,配合上 whale 等插件,可以快速搭建一个靶场 CTFd 以下测试环境均为 Ubuntu20.04,Python3.8 CTFd 官网 CTFd-Github 仓库 CTFd 中文汉化 由于本人更喜欢汉化风格,所以使用的均为 CTFd_chinese_CN 下 3.4.1 版本的 CTFd 克隆 CTFd 代码并安装相关依赖 #如果空白环境 sudo ./prepare.sh #如果是在宝塔环境下安装(bt 自带的 python 会产生冲突) sudo apt-get --fix-broken install #如果已经安…
本文分为 CM-x86 和 WSA(Win11 安卓子系统)两部分 CM-x86 CM-x86 是 Android-x86 的衍生版本,用作 PC 的安卓虚拟机再好不过 我使用的是 CM-x86-14.1(64 位),以下为配置 在安装时有以下几步 GPT 安装 NO 创建新磁盘 (New)-> 设置为启动盘 (bootable)-> 写入分区表 (Write) 安装 Grub 引导 EXT4 文件格式 Reboot 重启即可 但是完成以上几步,只能进入到安卓的 Shell 模式,无法进入图形界面,可以选择下面第三个的 nomodeset 模式 ...
前言 MD5 是一种哈希算法,用来保证信息的完整性。 就一段信息对应一个哈希值,且不能通过哈希值推出这段信息,而且还需要保证不存在任意两段不相同的信息对应同一个哈希值。 不过 MD5 算法算出来的值也就 16byte(即 128bit),肯定存在相同的,找到另一个所花时间长短而已。 填充信息 我们要对一个字符串进行 MD5 计算,那么肯定要从这个字符串的处理入手。 我们知道一个字符的长度是 1 个 byte, 即 8bit 的长度。 MD5 对待加密的字符串的处理是将一个字符串分割成每 512bit 为一个分组,形如 N*512+R,这里的 R 是余下的位数。这个 R 分为几种情况: R=0 时,需要补位,单补上一个 512bit 的分组,因为还要加入最后 64 个位的字符串长度。 R<…
TQLCTF-Wordle 题目出自当下火热的填字游戏 填字游戏的规则为输入五个字母,然后分别返回五个颜色 绿色:位置和字母均正确 黄色:字母正确位置不正确 灰色:字母和位置均不正确 我们的任务就是用最少的次数,把答案找出来 在该题目中,颜色可以通过字节流分辨出来。在这之前,我在 B 站大学看到过一个讲述相关技术的视频,于是我就翻了下。 利用信息论解决 Wordle 问题 理论存在,实践开始 于是,又写了一个 10K 的代码,发现自己的代码只能做到平均 4.3 左右。 好废物啊我 于是上 Github 找轮子 Wordle-solver 这个开源项目能做到平均 3.4,然后就有了如下 10K 代码 ...
Windows 中 WSL 默认磁盘为 C 盘,这导致在安装了 Docker,Kali,Ubuntu 等 WSL 后,C 盘空间不足,于是参照相应 Issue 有如下脚本 #以下脚本均应该在 PowerShell 管理员模式下运行 wsl --list -v PS C:\Windows\system32> wsl --list -v NAME STATE VERSION * Ubuntu Running 2 docker-desktop-data Running 2 docker-desktop Running 2 kali-linux Stopped 2 #查看相应 WSL wsl --shutdown #停止 WSL wsl --export Ubuntu F:\WSL…
VNCTF-CRYPTO-ezmath 是一道完全没难度的密码题,但是又是一道非常有难度的脚本题 这题只要返回 4*N 就好,难度就在写脚本了 在 PWN 等运用到 nc 的题目中,Sha256 是最好的防止扫端口的计算方法。 由于 Sha256 不可逆,我们只好通过暴力或者撞库的方式找出所有解 但是这题又使用的是 Sha256 (????+XXXXXXXXXXXX) 这样的方式,所以只好选择暴力了 再配合上 pwntools,发就完事了 ...
见到了一题比较离谱的 base64 题目,VNCTF2022-Web-gocalc0,可能是我太菜的原因,明明 hint 告诉我,flag 在 session 里面,我却怎样都 Base64 出不来,一直说解密出错。 这题对于 Web 没有一点难度,姑且放在 MISC 分类里面。 Base16 使用字符:数字 (0 ~ 9),字母 (A ~ F) Base16 先获取输入字符串每个字节的二进制值(不足 8bit 在高位补 0),然后将其串联进来,再按照 4bit 一组进行切分 (2^4=16),将每组二进制数分别转换成十进制,并对应下述编码。 即二进制转十六进制,对应下表 值 编码 值 编码 值 编码 值 编码 0 0 4 4 8 8 12 C 1 1 5 5 9 9 13 D 2 2…
VM2 的沙箱逃逸出自 VNCTF2022-WEB-newcalc0 根据 hint 访问 package.json///source?path=/package.json ... "dependencies": {"express": "^4.17.1", "pm2": "^4.5.6", "vm2": "^3.9.5"} ... 再阅读源码,无其他位置可以注入,故寻找 VM2 的 CVE 这里有个 CVE 数据库可以使用 Snyk Vulnerability Database (https://security.snyk.io/) 我们于是找到了一个 VM2 绕过的 CVE Sandbox Bypass Affecting VM2 versions { get…