PrivEsca1 - Linux提权总结
Linux 提权 (PrivEsca) : 枚举和典型例子提权, 也就是提升权限(Privilege Escalation), 最终获得 root 权限。渗透测试中, 提权操作是无法避免的非常重要的过程。 常用手段提权一定是对系统某种保护措施的利用, 逃逸或破坏。 一般来常用到的手段有这些: 低权限可修改高权限用户执行的脚本, 这本质上是 UGO 上的问题; 低权限运维人员也会输入/存储高权限凭据; 超越权限体系, 在其上层 (如内存) 捕获 / 修改凭据等信息和内核利用。 升级 shell 交互性在拿到任何一个用户 (即使是低权限用户) 的 shell 时, 首先应该让其交互性尽可能完整。 利用 python 来提升交互性: 1python -c 'import pty;pty.spawn("/bin/bash")' 禁用终端的输入预处理 (可以激活方向键): 1stty raw -echo 指定终端类型, 支持颜色输出和全屏程序 1export...
log4j2 复现
log4j2 复现用 docker 搭建靶机完成渗透, 理解 log4j2 漏洞。 靶机准备首先准备 docker 文件, 编辑 docker-compose.yaml: 1234567version: '2'services: solr: image: vulhub/solr:8.11.0 ports: - "8983:8983" - "5005:5005" 在同一目录执行 docker-compose up -d: 拉取完毕后启动镜像, 访问 8983 端口: log4j2 漏洞原理log4j2log4j2 是 Java 中常用的日志文件框架, 主要是帮助开发者记录程序运行时的信息, 例如调试信息, 运行错误等。 log4j2 存在一个关键特性: 支持插入动态内容, 例如变量和表达式, 并且支持插件来自定义功能, 比如解析${xxx}表达式。 看到这里已经有可以渗透的点了, 如果 Log4j2 不对用户的输入进行过滤, 那么就和 sqli...
brainpan 1 - CTF
brainpan:1 - CTF 镜像下载: 镜像 借 brainpan 这台靶机重温 PWN, 以及深入了解相关技术。 nmap 扫描主机发现常规 nmap 扫描, 扫到靶机: 端口扫描先探测端口, 再扫所有可用端口: TCP 扫描 9999 端口返回了一段转义的欢迎数据, 并提示输入密码, 比较可疑。先看一下端口扫描结果: Abyss 是一款轻量级的 HTTP 服务器软件, 其功能和 Apache, Nginx 是类似的, 不过更小, 资源占用更低, 适用于嵌入式系统或老旧硬件。 snet-sensor-mgmt 没有见过, 尝试一下访问: 192.168.170.141:10000: 看起来是一套 web 服务。 尝试连接 9999 端口, 会显示刚刚 nmap 扫出的字符。 1sudo nc 192.168.170.141 9999 目录爆破模糊测试既然端口 10000 是可访问的 web 服务, 那就可以先试试目录爆破, 上模糊测试: 1wfuzz -w...
LampSecurityCTF4 - CTF
LampSecurityCTF4 - CTF 靶机下载: 镜像 nmap 扫描主机发现1sudo nmap -sn 192.168.170.0/24 端口扫描1sudo nmap --min-rate 10000 -p- 192.168.170.140 123sudo nmap -sT -sV -O -p22,25,80,631 192.168.170.140sudo nmap -sU -p22,25,80,631 192.168.170.140sudo nmap --script=vuln --min-rate 10000 -p22,25,80,631 192.168.170.140 收集信息查看一下 nmap 扫出的 robots.txt: 1curl http://192.168.170.140/robots.txt 访问网站: 访问 Blog 中的推文, url 为 http://192.168.170.140/index.html?page=blog&title=Blog&id=2 , 可见是 GET 方式传参, 尝试一下...
sqli-lab lesson 1~10
sqli-lab lesson 1~10前言sqli-labs 是为入门 sql 注入的靶场, 涵盖了 sql 注入所涉及的各种手段。不过在sqli-labs 中并没有刻意设置 flag 项, 这里将 user 表中的 id 和对应的 password 视为要提取的敏感数据, 提取到这些数据即可视为获取了 flag。 这里只记录了比较典型的几个 lesson; 搭建 sqli-labs 靶场下载小皮, 宝塔或者其他面板工具, 在首页中打开 Apache 和 Mysql 服务, 然后下载并解压sql-网站: 把解压后的文件夹重命名为 “sqli”, 并把 php 版本改为 5.3.x 或 5.4.x: 配置数据库, 路径phpstudy_pro\WWW\sqli\sqli-labs-master\sql-connections\db-creds.inc 进行编辑。将账户密码改为小皮面板中数据库的配置项即可。 用 ipconfig 看一下当前设备的 ip 地址, 然后访问 http://ip/sqli 完成安装, 如果直接架在本地, 直接填 127.0.0.1...
Prime1 - CTF
prime1 - CTF 靶机镜像下载: vulhub 说明 ip Kali 攻击机 192.168.170.135 Prime1 靶机 192.168.170.139 Nmap 扫描首先还是非常常规的 Nmap 扫描, 收集信息。 主机发现1sudo nmap -sn 192.168.170.0/24 端口扫描 在漏洞扫描中可以看到 “wordpress” 字样, 说明该网站是使用 wordpress 建站。 wordpress 扫描 wpscan 是专门扫描 wordpress 站点的工具。 注意 wpscan 必须指定到 ../wordpress/ 目录下。 可以扫出 wordpress 的版本为 5.2.2。 信息收集访问目标站点: 根据站点信息, 管理员账户应该就是 victor, 首页的 Log in 应该也对应刚刚扫出的登录界面(http://../wordpress/wp-login.php)。 访问 /javascript , 可以看到 apache...
sickOS1.1 - CTF
SickOS 1.1 - 渗透靶机下载: vulnhub Nmap 扫描主机发现还是先用 Nmap 扫一下主机和端口: 1sudo nmap -sn 192.168.170.0/24 端口扫描 1sudo nmap --min-rate 10000 -p- 192.168.170.138 查阅了一下, squid 服务是传统代理, 其主要作用是 缓存 + 代理: 将网页内容缓存在本地, 方便下次快速访问; 代理转发, 工作在应用层, 代理本身通常是不加密的, 直接明文传输, 容易被识别(这一点与 VPN 不同, 后者是通过加密隧道进行全程网络加密, 使用 IPSec; OpenVPN 等强加密, ) squid 这类传统代理的侧重点在于流量和访问控制, 而 VPN 的侧重点在于绝对隐私和全流量加密。 123sudo nmap -sT -sV -O -p22,3128,8080 192.168.170.138sudo nmap -sU -p22,3128,8080 192.168.170.138sudo nmap --script=vuln...
Jarbas - CTF
jarbas 渗透 .bilibili-wrapper { max-width: 1280px; /* 最大宽度限制 */ margin: 20px auto; aspect-ratio: 16/9; /* 现代浏览器比例控制 */ width: 100%; } .bilibili-iframe { width: 100%; height: 100%; border: 0; box-shadow: 0 2px 8px rgba(0,0,0,0.1); /* 添加优雅阴影 */ } 靶机下载: vulnhub Nmap 扫描主机发现先用 Nmap 扫描靶机, 扫出靶机 ip: 192.168.170.137 1sudo nmap -sn 192.168.170.0/24 漏洞扫描先寻找开放的端口: 1sudo nmap --min-rate 10000 -p- 192.168.170.137 接下来对这些端口做 TCP, UDP 和漏洞脚本扫描: 123sudo nmap -sT -sV -O...
w1r3s - CTF
w1r3s 详解w1r3s 靶机的下载地址: 链接 Kali 设置安装 Kali 镜像的过程不再赘述, 在完成账号设置后, 测试 Kali 环境即可。 设置 root 账户密码在 2020.1 版本之后 Kali root 账户默认无密码,需通过普通用户提权。 输入这条命令和账户密码来设置 root 账户的密码: 1sudo passwd root # 先提权到root,再设置密码 在渗透测试中, 在命令执行出错时, 应该首先想到权限问题, 尝试加上或者去掉 sudo 之后再次尝试。 修改镜像源添加阿里云镜像, 复制以下文本: 12deb https://mirrors.aliyun.com/kali kali-rolling main non-free contribdeb-src https://mirrors.aliyun.com/kali kali-rolling main non-free contrib 在 kali 终端中以 root 权限打开配置文件修改即可, 修改完毕后更新配置。 12sudo mousepad...
hexo - 部署
Hexo: 部署1 安装 Hexo 命令行先安装宝塔面板, 然后按提示安装相关组件和 node.js 版本管理器, 方便不同环境进行版本隔离。 打开 node.js 版本管理器, 安装 node LTS v20.18.3, 并选为命令行版本, 然后选中模块, 安装 hexo-cli, hexo。 安装完成后输入 hexo -v 来验证安装。 2 用 Hexo 建站选定目录 ( Linux 默认为 /www/wwwroot) 并进行网站初始化。 123hexo init blogcd blognpm install 启动项目, 可以直接在命令行输入 hexo s 来启动, 也可以在宝塔面板中选择添加 node 项目, 然后选中项目文件夹。注意启动项设置为 hexo server。 hexo 项目的默认端口为 4000, 注意在服务器安全组合防火墙放行对应端口。配置完毕后即可访问网站。 3 配置 Git首先安装 Git: 1yum install git 然后配置用户名和邮箱, 安装完成后输入 git config -l 来验证。 12git config...






























































