- 博客(21)
- 资源 (4)
- 收藏
- 关注
原创 XCTF-攻防世界CTF平台-PWN类——1、Mary_Morton(格式化字符串漏洞、缓冲区溢出漏洞)
目录标题一级目录二级目录1、查看程序基本信息2、反编译程序3、攻击思路(1)先利用功能2格式化字符串漏洞(2)找到功能1的sub_400960()函数返回地址的位置方法二一级目录二级目录1、查看程序基本信息Mary_Morton程序,先用file查看:Linux下64位的ELF文件再用checksec查看程序开启了Partial RELRO、NX和Canary,没有PIE。程序开启了canary,就不能直接利用栈溢出覆盖返回地址了。因为在初始化一个栈帧时在栈底(stack overflow
2021-09-09 22:20:50 1443 1
原创 《逆向工程核心原理》读书笔记——第13章 PE文件格式
第13章 PE文件格式13.1 介绍13.2、PE文件格式13.2.1基本结构13.2.2 VA&RVA13.3 PE头13.3.1 DOS头13.3.2 DOS存根13.3.3 NT头13.3.4 NT头中的文件头1.Machine2.NumberOfSections3.SizeOfOptionalHeader4.Characteristics13.3.5 NT头中的可选头1.Magic2.AddressOfEntryPoint3.ImageBase4.SectionAlignment, File
2021-09-29 22:15:04 2080
原创 数据库实验五——数据更新
这里写目录标题一级目录实验内容(1)实验内容(2)一级目录实验报告【实验名称】 实验5 数据更新 【实验目的】(1)熟练掌握使用交互式方式编辑表中的数据。(2)能够运用T-SQL语句对表中的数据进行插入、修改和删除操作。【实验原理】(1)插入数据语句INSERT(2)修改数据语句UPDATE(3)删除数据语句DELETE【实验内容】实验内容(1)针对教材中的学生_课程数据库,进行数据更新(有些删除需要分步进行):1.将选修了3号课程的学生的成绩加5分 ;UPD
2021-09-28 20:03:25 4601
原创 数据库实验三——连接查询
数据库实验三实验内容(1)实验内容(2)【实验名称】 实验3 连接查询 【实验目的】(1)熟悉基本的连接操作(2)掌握内连接与外连接的方法(3)学会应用自身连接(4)掌握多表连接【实验原理】查询语句SELECT【实验内容】实验内容(1)针对教材中的学生_课程数据库,进行各种连接查询1.查询“李勇”同学的选课情况(结果含课程号、成绩)2.查询“信息系统”课程的选课情况(结果含学号、成绩)3.查询“数学”课程的平均分4.查询“李勇”同学的平均分5.查询“
2021-09-28 16:18:12 4065
原创 数据库实验一——数据定义
这里写目录标题一级目录实验内容(一)实验内容(二)实验内容(三)实验内容(四)一级目录【实验名称】 实验一 数据定义 【实验目的】(1)掌握运用交互式方式和SQL语句创建、修改、删除数据库的方法。(2)掌握使用交互式方式和SQL语句创建、修改、删除基本表的方法。(3)理解索引的概念和索引的作用。(4)掌握创建、删除索引的方法。【实验原理】(1)使用交互式方式创建、修改、删除数据库和基本表的方法(2)创建数据库语句CREATE DATABASE(3)修改数据库语句ALTER
2021-09-28 10:48:17 2666
原创 XCTF-攻防世界CTF平台-Reverse逆向类——53、easyCpp(Linux64位ELF文件、C++逆向)
下载附件easyCpp,先查看文件信息:是Linux下的64位ELF文件,运行程序:是一个输入字符串然后判断是否正确的程序,错误就输入“You failed!”之后用IDA64打开:main函数源代码及注释:int __cdecl main(int argc, const char **argv, const char **envp){ char v3; // r15 __int64 v4; // r12 __int64 v5; // rbx __int64 v6; //
2021-09-25 18:05:50 1159
原创 《逆向工程核心原理》读书笔记——第7章 栈帧
第7章 栈帧7.1栈帧7.2调试示例:stackframe.exe7.2.1 StackFrame.cpp7.2.2开始执行main()函数&生成栈帧7.2.3 设置局部变量7.2.4 add()函数参数传递与调用7.2.5 开始执行add()函数&生成栈帧7.2.6设置 add()函数的局部变量(x, y)7.2.7 ADD 运算7.2.8删除 函数add()的栈帧&函数执行完毕(返回)7.2.9从栈中删除函数add()的参数(整理栈)7.2.10调用printf()函数7.2.1
2021-09-20 12:59:27 1160 1
原创 《逆向工程核心原理》读书笔记——第10章 函数调用约定
第10章10.1函数调用约定10.1.1 cdecl10.1.2 stdcall10.1.3 fastcall其他几种类型:本章学习函数调用约定( Calling Convention)的相关知识。10.1函数调用约定 Calling Convention译成中文是“函数调用约定”,它是对函数调用时如何传递参数的一种约定。我们通过前面的学习已经知道,调用函数前要先把参数压入栈然后再传递给函数。栈就是定义在进程中的一段内存空间,向下(低地址方向)扩展,且其大小被记录在PE头中。也就是说,进程运行时确定
2021-09-18 14:10:56 247
原创 《逆向工程核心原理》读书笔记——第8章 Visual Basic编写的exe程序特征
第8章8.1运行abex'crackme #28.2 Visual Basic文件的特征8.2.1 VB专用引擎8.2.2 本地代码和伪代码8.2.3 事件处理程序8.2.4 未文档化的结构体8.3开始调试8.3.1 间接调用8.3.2 RT_MainStruct结构体8.3.3 ThunRTMain()函数 本章分析第二个crackme文件abex’crackme #2,它使用Visual Basic语言编写,你会感受到与使用Visual C++或Assembly编写的文件相比具有不同的形态。 3
2021-09-17 10:36:52 824
原创 《逆向工程核心原理》读书笔记——第6章 汇编编写的exe程序入口
第6章一级目录6.1abex' crackme #16.1.1 开始调试6.3 将参数压入栈一级目录6.1abex’ crackme #1 调试前先运行abex’crackme #1这个程序,大致了解一下它。如图6-1所示,双击运行程序后弹出一个消息窗口,显示“Make me think your HD is a CD-Rom"消息。我刚开始并不理解这句英文。图6-1运行程序 消息的最后部分出现了“CD-Rom”这个词,我们只能根据它大致推测出前面的HD为HDD(Hard Disk Dri
2021-09-15 16:58:26 519
原创 《逆向工程核心原理》读书笔记——第5章 栈
第5章 栈一级目录5.1 栈5.1.1 栈的特征5.1.2栈操作示例一级目录5.1 栈栈内存在进程中的作用如下: (1)暂时保存函数内的局部变量。 (2)调用函数时传递参数。 (3)保存函数返回后的地址。 栈其实是一种数据结构,它按照FILO (First In Last Out,后进先出)的原则存储数据。后面会通过一个示例向大家证明这一点。5.1.1 栈的特征栈内存的结构一般如图5-1所示,下面简单讲解一下。 一个进程中,栈顶指针(ESP)初始状态指向栈底端。执行PUSH命
2021-09-15 11:08:17 306
原创 《逆向工程核心原理》读书笔记——第4章 IA-32寄存器基本讲解
第4章 IA-32寄存器基本讲解4.IA-32寄存器1.通用寄存器2.段寄存器3.程序状态与控制寄存器4.指令指针寄存器4.IA-32寄存器 IA-32是英特尔推出的32位元架构,属于复杂的指令集架构,并且支持多种寄存器。下面列出了IA-32支持的寄存器类型。 以上寄存器列表中,我们先要学习基本程序运行寄存器的相关内容,这是程序调试中最常见的寄存器,是学习程序调试初级技术必须掌握的内容。后面学习中、高级程序调试技术时,我们将继续学习有关控制寄存器(Control registers )、内存管理
2021-09-13 16:02:56 1032
原创 XCTF-攻防世界CTF平台-Crypto类——4、flag_in_your_hand1(前端输入加密)
下载文件之后,发现是一道前端的题目:有一个index.html文件和一个script-min.js文件:运行html文件:要求输入一个Token,然后点Get flag!按钮:代码逻辑就是输入一个字符串,然后经过计算对比得到正确的flag我们先查看源代码:<html> <head> <title>Flag in your Hand</title> <style type="text/css"> body {
2021-09-12 14:22:34 1572
原创 XCTF-攻防世界CTF平台-Reverse逆向类——65、reverse-box(Linux32位ELF文件、gdb脚本调试)
这里写目录标题1、查看程序信息2、main函数3、sub_804858D()函数:4、程序逻辑5、方法一:gdb脚本获得内存中的数组6、gdb脚本分析:7、将输出转换会输入的flag8、C语言复现程序得到数组挑战描述$ ./reverse_box ${FLAG}95eeaf95ef94234999582f722f492f72b19a7aaf72e6e776b57aee722fe77ab5ad9aaeb156729676ae7a236d99b1df4aflag格式:TWCTF{}1、查看程序信息先
2021-09-11 21:12:46 2456 3
原创 Pwntools使用介绍
Pwntools 是一个 CTF 框架和漏洞利用开发库。它用 Python 编写,专为快速原型设计和开发而设计,旨在使漏洞利用编写尽可能简单。 Pwntools 分为两个模块,一个是 pwn,简单地使用 from pwn import * 即可将所有子模块和一些常用的系统库导入到当前命名空间中,是专门针对 CTF 比赛的;而另一个模块是 pwnlib,它更推荐你仅仅导入需要的子模块,常用于基于 pwntools 的开发。pwn下面是 pwn 的一些常用命令行工具:pwn asm 和 disas
2021-09-08 22:38:57 1379
原创 XCTF-攻防世界CTF平台-Reverse逆向类——59、mfc逆向-200(MFC编程逆向)
先查看程序信息:Windows 32 位GUI程序,符合题目中MFC编程的程序,被加了VMProtect。运行程序:用xspy查看程序控件信息:获得程序窗口句柄:00170E52类名:944c8d100f82f0c18b682f63e4dbaa207a2f1e72581c2f1b再观察程序的消息处理函数:接受到以下消息:WM_SYSCOMMAND(0x112,274):当用户选择窗口菜单的一条命令或当用户选择最大化或最小化时那个窗口会收到此消息;WM_PAINT(0xf,15):
2021-09-08 14:32:34 923
原创 XCTF-攻防世界CTF平台-Reverse逆向类——52、handcrafted-pyc(Python的pyc文件逆向)
下载题目附件之后,查看附件52:发现它就是一个Python代码文件#!/usr/bin/env python# -*- coding: utf-8 -*-import marshal, zlib, base64exec(marshal.loads(zlib.decompress(base64.b64decode('eJyNVktv00AQXm/eL0igiaFA01IO4cIVCUGFBBJwqRAckLhEIQmtRfPwI0QIeio/hRO/hJ/CiStH2M/prj07diGRP
2021-09-07 10:48:51 1824 1
原创 XCTF-攻防世界CTF平台-Web类——3、php_rce(ThinkPHP V5.0框架远程代码执行漏洞)
先访问题目场景:主页提示我们:网页使用的是ThinkPHP框架,版本为5.0这道题主要是考察:ThinkPHP官方2018年12月9日发布重要的安全更新,修复了一个严重的远程代码执行漏洞。该更新主要涉及一个安全更新,由于框架对控制器名没有进行足够的检测会导致在没有开启强制路由的情况下可能的getshell漏洞,受影响的版本包括5.0和5.1版本。攻击的exp是:http://111.200.241.244:61059/index.php?s=index/\think\app/invokefuncti
2021-09-03 11:10:19 1123
原创 C语言printf函数输出格式%x和%p的差别
%p输出sizeof(void*)大小的数据%x输出sizeof(unsigned int)大小的数据请不要使用 %x 作为指针我经常看到这样的代码:printf(“foo 的地址:%x\n”, &foo);这里的目的是以十六进制格式打印地址。好计划; 糟糕的执行。首先,这是一个可能的输出:foo 的地址:123456这是十进制 (%u)、十六进制 (%x) 还是八进制 (%o)?我无法从输出中分辨出来;据我所知,写那行的人是一个真正的新手,使用了 %i 或 %d。(对于非常高的地
2021-09-02 20:46:45 5202
原创 XCTF-攻防世界CTF平台-Web类——1、baby_web(HTTP响应)
打开题目,提示想想初始页面是哪个:打开题目场景:这个的主要思路是访问初始页面http://111.200.241.244:52996/index.php:Flag就在返回的响应数据包中的FLAG字段:flag{very_baby_web}抓包也同样能找到flaghttp://111.200.241.244:52996/1.phphttp://111.200.241.244:52996/index.php...
2021-09-01 20:00:10 418
原创 XCTF-攻防世界CTF平台-Web类——2、Training-WWW-Robots(目录泄露)
这是一道文件目录泄露的题目先访问题目场景:在这个小的训练挑战中,你将学习机器人排除标准。 robots.txt文件被网络爬虫用来检查他们是否被允许抓取和索引你的网站或只是部分网站。有时这些文件显示目录结构,而不是保护内容不被抓取。享受吧!它告诉搜索引擎(爬虫)可以访问站内的那些内容不能访问那些内容,但是它只是一个说明上的不允许,并不是技术上的不允许。接着我们访问robots.txt文件查看它的协议内容:http://111.200.241.244:51837/robots.txt意
2021-09-01 10:24:55 5371
编程实现DES的工作模式,DES.zip
2021-02-23
calculator.zip
2021-02-07
阿里巴巴java开发手册及插件
2019-03-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人