ctf

CTF_论剑场 头像

别等时光非礼了梦想. 提交于 2019-12-01 04:22:10
首先打开链接发现这个链接是一个头像 然后下载这个头像 通过XDx 分析一下 在编辑中查找 flag 然后发现flag是一个永base64 加密的一串文字 然后我们将这串文字 解密 然后再通过md5 32(小)加密就可以 (可以直接将图片后缀jpg改成txt 然后编辑中查找flag) 来源: https://www.cnblogs.com/ainv-123/p/11653602.html

CTF中的git泄露题目

ⅰ亾dé卋堺 提交于 2019-12-01 02:35:19
不错的文章:https://www.cnblogs.com/iamstudy/articles/wangding_4th_game_web_writeup.html 网鼎杯的comment题目 https://blog.csdn.net/qq_35078631/article/details/77777416 sniperOJ的2018题目 以上两题均涉及git泄露和git恢复 ok 这里使用王一航大佬的git脚本 https://github.com/wangyihang/githacker git clone https://github.com/wangyihang/githacker 然后cd进去 python githacker.py 127.0.0.1:8307/.git/ 然后文件夹会出现一个目录 没有commit的文件或者隐藏起来的 可以进行恢复 git log --reflog git reset --hard af36ba2d86ee43cde7b95db513906975cb8ece03先git log --reflog查看一下 可疑文件 然后在恢复他 方法二 git stash list | tee git stash pop # 或者使用 git stash apply 来源: https://www.cnblogs.com/Tkitn/p

CTF-流量分析笔记

限于喜欢 提交于 2019-11-30 23:25:04
---恢复内容开始--- 前言 做流量分析很长时间了但是一直没有系统的去总结过这类题目的做法和思路以及wireshark的使用方法,这次做题的时候突然发现了一个总结的特别好的博客,因此想趁机做个笔记总结一下。 参考链接:https://mp.weixin.qq.com/s?__biz=MzU1ODg3NTMyMQ==&mid=2247489263&idx=1&sn=d9060114d924266ed2bdf4311ca030dd&source=41#wechat_redirect https://jwt1399.top/2019/07/29/ctf-liu-liang-fen-xi-zong-jie/#toc-heading-4 Wireshark的使用 wireshark的基本使用方法有数据包筛选、数据包搜索、数据包还原、 数据提取四个部分。 1.数据包筛选 1.1筛选ip 源筛选ip ip.src == ip 地址 或者手动操作 点击任意一个符合筛选条件的数据包,找到IPv4下的Source字段。 右键点击Source字段,作为过滤器应用 – 选中。 目的ip筛选 ip.dst == ip地址 或者手动操作: 点击任意一个符合筛选条件的数据包,找到IPv4下的Destination字段,右键点击Destination字段,作为过滤器应用 – 选中。 1.2 mac 地址筛选:

CTF_论剑场 名侦探柯南

落花浮王杯 提交于 2019-11-30 23:11:41
首先看一下是一个压缩包然后下载 解压后会发现一个图片和另一个压缩包 打开图片 发现是这个 用HxD分析一下这张图片通过搜索 zip jpg。。。。。。 然后会发现这张图片里有一个png 图片 所以判断这张图片是一个压缩包 解压出图片来 总感觉这个图片有问题 所以拖到HxD中进行分析 然后发现就是一个正常的图片 然后我怀疑这个图片有一部分有所隐藏 所以我把图片拖到tweakPNG 然后改一下高(改成593x600)然后会发现图片有所变化 搜一下吴彦祖的生日是 记得一开始的那个需要密码的压缩包 我猜测一下密码应该是19740930 试一下果然是 解压出来发现是一个gif 图片然后通过stegslove 分离出图片来 然后就知道flag{lunjian_together} 来源: https://www.cnblogs.com/ainv-123/p/11644190.html

ctf基本的文件上传与绕过学习

此生再无相见时 提交于 2019-11-30 21:46:20
绕过客户端校验前台脚本检测扩展名上传webs hell 原理: 当用户在客户端选择文件点击上传的时候,客户端还没有向服务器发送任何 消息,就对本地文件进行检测来判断是否是可以上传的类型,这种方式称为前台 脚本检测扩展名。 绕过前台脚本检测扩展名,就是将所要上传文件的扩展名更改为符合脚本检 测规则的扩展名,通过 BurpSuite 工具,截取数据包,并将数据包中文件扩展名 更改回原来的,达到绕过的目的 实验: 打开要上传的页面,上传要上传的木马文件lurb.php,点击上传。 页面显示错误 返回上传页面,点击浏览,选择要上传的木马文件lubr.jpg(把lubr.php重命名 lubr.jpg) 上传用burpsuite抓包,将.jpg改为.php,点击’forward’发送数据包,进行绕过。 绕过 Content-Type 检测文件类型上传 原理: 当浏览器在上传文件到服务器的时候,服务器对所上传文件的Content-Type类型进行检测,如果是白名单允许的,则可以正常上传,否则上传失败。绕过Content–Type文件类型检测,就是用BurpSuite 截取并修改数据包中文件的Content-Type类型,使其符合白名单的规则,达到上传的目的。 实验: 打开要上传文件的页面,上传木马lubr.php。报错 利用burpsuite抓包更改Content

CSAW Quals CTF 2017-scv

两盒软妹~` 提交于 2019-11-30 16:19:36
目录 程序基本信息 程序漏洞 整体思路 exp脚本 内容参考 程序基本信息 64位动态链接程序,开启了栈溢出和数据段不可执行保护 程序漏洞 read函数很明显的栈溢出漏洞 整体思路 由于题目给了libc,我们可以使用one_gadget获得gadget在libc中的偏移,通过泄露其他函数库的偏移计算gadget在内存中的位置。由于程序中有栈溢出保护,我们可以利用功能2,功能2的作用是puts打印我们输入的字符串,我们可以利用功能2将canary泄露出来,这样我们就可以进行栈溢出了,后面的步骤就简单了,利用rop技术即可pwn掉程序。 exp脚本 #!/usr/bin/python #coding:utf-8 from pwn import * context.update(os = 'linux', arch = 'amd64') io = remote('172.17.0.2', 10001) pop_rdi = 0x400ea3 #pop rdi;ret puts_plt = 0x4008d0 #puts函数plt表地址 read_got = 0x602030 #read函数got表地址 start = 0x4009a0 #start函数首地址 io.sendline('1') io.send('A'*164+'ABCDE')

CTF导引(一)

限于喜欢 提交于 2019-11-30 15:11:33
ctf预备知识: 视频: https://www.bilibili.com/video/av62214776?from=search&seid=1436604431801225989 CTF比赛:“夺旗大赛”   比赛形式:     挖掘漏洞,利用漏洞进入对方电脑,拿到关键文件:     /home/www/flag     /home/www/flag     .... 内容:   ctf线上赛:     web 二进制 杂项   ctf线下赛:     web漏洞挖掘与利用- - - - -     pwn漏洞与利用 - - - - -     攻防式 知识储备:   漏洞利用:     二进制代码 - - -木马 shellcode powershell     python pwntools     web机制 php js html   web漏洞挖掘能力:    代码审计     调试环境   pwn漏洞挖掘:     逆向分析     Linux系统知识     漏洞利用脚本编写     远程触发漏洞   服务器安全运维人员     shell     python     linux运维的知识   流量分析能力     协议分析     (“作弊”) CTF比赛的神器:   Kali系统:     nmap - - - - -端口扫描 - - - - - - - -

[CTF]CTF中if (md5(md5($_GET[‘a’])) == md5($_GET[‘b’])) 的绕过

梦想与她 提交于 2019-11-30 11:54:08
原作者:KTWO 出处: https://www.k2zone.cn/?p=2019 0X00 摘要 CTF中md5判等可使用0e绕过,但是如果是双md5该如何绕过呢?本文将教你如何绕过md5(md5($_GET[‘a’])) == md5($_GET[b’])。 0X01 引言 在php中,所有变量都是若类型的,在使用if判等的时候要格外小心,使用特殊的参数可能会使本来不相等的if判断位相等,比如下面的例子。 <?php if (isset($_GET['a']) && isset($_GET['b'])) { $a = $_GET['a']; $b = $_GET['b']; if ($a != $b && md5($a) == md5($b)) { echo "flag{XXXXX}"; } else { echo "wrong!"; } } else { echo 'wrong!'; } ?> 上面只要传入参数a=s1885207154a,b=s1836677006a,即可,为什么呢?看一下这两个字符串的md5值可以返现分别如下: MD5值: md5("s1885207154a") => 0e509367213418206700842008763514 md5("s1836677006a") => 0e481036490867661113260034900752

ctf中rsa攻击方法

允我心安 提交于 2019-11-30 01:51:05
RSA攻击 ctf中常见的rsa攻击方式有以下几种 低加密指数攻击 低加密指数广播攻击 低解密指数攻击 共模攻击 已知高位攻击 0x00 低加密指数攻击 当e过小时,如果明文过小,导致明文的三次方仍然小于n,那么通过直接对密文三次开方,即可得到明文。 如果明文的三次方比n大,但不够大,那么设k,有: c= m^e+kn 爆破k,如果 c-kn 能开三次根式,那么可以直接得到明文。 # 低加密指数攻击 import gmpy2 import time n =

记一次CTF出题WP

核能气质少年 提交于 2019-11-29 20:04:56
笔者有幸参与一次CTF入门级的出题,在此记录一下WP 1、测试你得手速 1、用IDA打开程序 找到单击次数, 获取全局变量地址。 打开程序 打开OllyDbg attcach后在左下角按CTRL+N 跳到004099F0内存地址 右击下硬件写入断点。 然后按F9运行 然后单击Click 将其改成19999的16进制 然后再摁F9 2、简单密码题 UPX脱壳 用IDA逆向后 记下base64编码的地址 打开x64dbg 加载后 按F9后将RIP修改成401530 然后按F9将base64编码打印出来 如下所示 复制下来后新建个html 然后打开 来源: https://www.cnblogs.com/godoforange/p/11531221.html