逆向攻防世界CTF系列57-babymips
逆向攻防世界CTF系列57-babymips32位无壳,IDA8.3打开不能反编译,使用7.5打开 12345678910int __fastcall main(int a1, char **a2, char **a3){ setbuf((FILE *)stdout, 0); setbuf((FILE *)stdin, 0); printf("Give me your flag:"); scanf("%32s", v5); for ( i = 0; i < 32; ++i ) *((_BYTE *)&i + i + 4) ^= 32 - (_BYTE)i; if ( !strncmp(v5, fdata, 5u) ) result = sub_4007F0(v5); else result = puts("Wrong"); return result;} 跟进变量i和v5发现地址差4,这里就是将32位逐位异或32-...
PHP2-CTFWeb进阶wp-攻防世界13
CTFWeb进阶wp-攻防世界-PHP2用了御剑和dirsearch扫描了一下发现什么也没扫描到,其它人好像有扫描到的,看了大佬的wp说有index.phps,去查了下。 phps 文件就是 php 的源代码文件,可以当作一个知识点记住,直接访问/index.phps,得到源码 123456789101112131415<?phpif("admin"===$_GET[id]) { echo("<p>not allowed!</p>"); exit();}$_GET[id] = urldecode($_GET[id]);if($_GET[id] == "admin"){ echo "<p>Access granted!</p>"; echo "<p>Key: xxxxxxx </p>";}?>Can you anthenticate to...
CTFshow-爆破(Web21-28)
CTFshow-爆破(Web21-28)Web21抓包 选则dic.zip里的字典爆破,记得添加前缀admin: 答案admin:shark63 burp里有一个自定义迭代器,可以设置前几部分,很好用 Web22题目失效了直接看wp吧 360quake 使用空间搜索引擎—>360quake 搜索语法—>domain=”ctf.show” 可以搜索出子域名—>vip.ctf.show 可以发现子域名vip.ctf.show下面有flag—>flag{ctf_show_web} Web23直接给源码 123456789101112131415<?phperror_reporting(0);include('flag.php');if(isset($_GET['token'])){ $token = md5($_GET['token']); if(substr($token, 1,1)===substr($token, 14,1) &&...
CTFshow-信息收集(Web1-20)
CTFshow-信息收集(Web1-20)花了599开会员,对了,租号可以找我便宜,价钱好说, Web1 Web2 Web3burp抓包,注意,不要用HTTPS访问,很麻烦 Web4提示robots.txt 接着访问 Web5提示phps源码泄露 直接访问index.phps Web6提示:解压源码到当前目录 dirsearch扫描 提交发现错了,直接访问试试 Web7提示:版本控制很重要,但不要部署到生产环境更重要。 git Web8提示:版本控制很重要,但不要部署到生产环境更重要。 ctfshow{d2486c31-9252-439c-abee-429d5a270d61} Web9提示:发现网页有个错别字?赶紧在生产环境vim改下,不好,死机了 扫描一下啥也没 搜索 在使用vim时会创建临时缓存文件,关闭vim时缓存文件则会被删除,当vim异常退出后,因为未处理缓存文件,导致可以通过缓存文件恢复原始文件内容 以 index.php 为例:第一次产生的交换文件名为 .index.php.swp 再次意外退出后,将会产生名为...
CTF-Web入门wp-XCTF-(1-12)
CTF-Web入门wp-XCTF-(1-12)本人也是刚入门ctf-web系列,写一点wp 另外提供两个学习ctf的网站Hello CTF (hello-ctf.com)和Web 简介 - CTF Wiki (ctf-wiki.org) 入门题目地址:攻防世界 (xctf.org.cn) view_sourceF12查看Flag get_post使用HackBar get提交1...
攻防世界39-bug-CTFWeb
攻防世界39-bug-CTFWebdirsearch扫描无果,用sql注入测试失败,注册登录 Manage要管理员权限,这题的关键那应该就在获取权限上,在外面的找回密码。 burp抓包看看,拿刚注册的账号密码试试 发现分为两步,第一步提交信息,第二部修改密码 那如果我们把admin1改成admin呢?试试 成功了,点击manage hackbar设置XFF试试或burp添加X-Forwarded-For:127.0.0.1 查看源码 index.php?module=filemanage&do=upload 试了download,wirte,read,upload是有效的 现在眼熟了,可能要上传一句话木马 上传test.php 1<?php phpinfo(); ?> 被拦截 打算先上传,然后改后缀试试,显示it is not a image 可能是内容有php或者没有jpg的格式,或者后缀有问题,content-type 先改php内容看看 1<script...
pwn学习-堆入门
pwn学习-堆入门什么是堆堆是虚拟地址空间的一块连续的线性区域提供动态分配的内存,允许程序申请大小未知的内存在用户与操作系统之间,作为动态内存管理的中间人响应用户的申请内存请求,向操作系统申请内存然后将其返回给用户程序管理用户所释放的内存,适时归还给操作系统 堆管理器各种堆管理器 dlmalloc – General purpose allocator ptmalloc2 – glibc jemalloc – FreeBSD and Firefox tcmalloc – Google libumem – Solaris 堆管理器并非由操作系统实现,而是由libc.so.6链接库实现。 封装了一些系统调用,为用户提供方便的动态内存分配接口的同时,力求高效地管理由系统调用申请来的内存。 arena 堆的申请在我们常见的操作中,堆是用malloc函数申请使用的。 堆的申请我们一般用malloc函数进行申请使用。 堆chunk malloc...
Spring入门
Spring一、Spring简介1.1 Spring概述官网地址:https://spring.io/ Spring 是最受欢迎的企业级 Java 应用程序开发框架,数以百万的来自世界各地的开发人员使用 Spring 框架来创建性能好、易于测试、可重用的代码。 Spring 框架是一个开源的 Java 平台,它最初是由 Rod Johnson 编写的,并且于 2003 年 6 月首次在 Apache 2.0 许可下发布。 Spring 是轻量级的框架,其基础版本只有 2 MB 左右的大小。 Spring 框架的核心特性是可以用于开发任何 Java 应用程序,但是在 Java EE 平台上构建 web 应用程序是需要扩展的。 Spring 框架的目标是使 J2EE 开发变得更容易使用,通过启用基于 POJO编程模型来促进良好的编程实践。 spring家族项目列表:https://spring.io/projects 1.2 Spring FrameworkSpring 基础框架,可以视为 Spring 基础设施,基本上任何其他 Spring 项目都是以 Spring...
Hadoop入门
Hadoop入门题型一、填空题(共10个空,每空1分,共10分) 二、不定项选择题(共15小题,每题2分,共30分) 三、问答题(共6小题,共40分) 四、论述题(共2小题,每题10分,共20分) 第一章1.1 大数据的概念、类型大数据指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。 大数据的类型大致可分为三类: 传统企业数据:包括 CRM系统中的客户数据,传统的ERP数据,网上商店交易数据、库存数据以及账目数据等。 机器和传感器数据:包括详细呼叫记录,网络日志、工业设备传感器,设备日志,交易数据等 社交数据:包括用户行为记录,反馈数据等。如来Twitter、Facebook等在线社交平台。 1.2...
逆向攻防世界CTF系列61-APK-逆向2
逆向攻防世界CTF系列61-APK-逆向232位,C#写的 dnSpy打开,定位 一眼看到Success和Ctf 仔细看看Main,再运行一下,发现需要连接,后面才能运行,因此我们先连接一下 12345678910111213141516171819202122232425262728private static void Main(string[] args){ string text = "127.0.0.1"; int num = 31337; TcpClient tcpClient = new TcpClient(); try { Console.WriteLine("Connecting..."); tcpClient.Connect(text, num); } catch (Exception) { Console.WriteLine("Cannot connect!\nFail!"); return; } Socket client =...