【软件逆向】软件破解?病毒木马?游戏外挂?

简介: 【软件逆向】软件破解?病毒木马?游戏外挂?


课前闲聊

你知道吗?unity学了可以速通黄游
你知道吗?CTF打好了可以去美国参加国际比赛
你想打竞赛提升自己嘛?
想提升逆向功底却还在黑暗里摸索?
对防治软件破解和反制游戏外挂感兴趣?

in1t-主攻软件攻防、移动安全

大二大三参加国赛,拿国奖。

ctftime国际赛排名,打积分。

Misc–python pvm的逃逸

合天pwn学过了,很入门

shellcode恶意代码–拿shell的代码

认识CTF

什么是CTF

CTF是指Capture The Flag,是一种网络安全竞赛,参赛者需要在规定时间内解决一系列的安全问题,获取旗帜并提交给组织者,以获取积分和排名。这种比赛可以提高参赛者的安全意识和技能,也可以促进安全社区的交流和合作。

CTF解题模式

解题模式 (Jeopardy)常见于线上选拔比赛。在解题模式 CTF 赛制中,参赛队伍可以通过互联网或者现场网络参与,参赛队伍通过与在线环境交互或文件离线分析解决网络安全技术挑战获取相应分值,类似于 ACM编程竞赛、信息学奥林匹克赛,根据总分和时间来进行排名。

不同的是这个解题模式一般会设置 一血 、二血、三血,也即最先完成的前三支队伍会获得额外分值,所以这不仅是对首先解出题目的队伍的分值鼓励,也是一种团队能力的间接体现。

题目类型主要包含 Web网络攻防、Re逆向工程、Pwn二进制漏洞利用、Crypto 密码攻击、Mobile 移动安全以及 Misc安全杂项 这六个类别。

什么是逆向

逆向是指分析数据和程序的过程,旨在理解原理和工作原理,以及编写可控制的程序。

主要是:把二进制机器码反汇编得到的汇编代码,进行功能分析。

定义

软件代码逆向主要指对软件的结构、流程、算法、代码等进行逆向拆分及分析

对软件进行定制化和私人化,自己开发模块,把它嵌入,

把软件变得更顺手!

随心所欲~~

让自己的软件不同!

应用领域

主要应用于软件维护、软件破解、漏洞挖掘、恶意代码分析等

CTF中的逆向

平台: Windows、linux、Android、开发板

lot固件吗…

涉及:算法、加解密、反分析、反调试、系统机制等

现状

现在的awd全是脚本怪物

AWD:Attack With Defence,即攻防对抗,比赛中每个队伍维护多台服务器(一般两三台,视小组参赛人数而定),服务器中存在多个漏洞(web层、系统层、中间件层等),利用漏…

推荐书籍

Re4b

C++反汇编与逆向分析技术揭秘

加密与解密

程序员的自我修养

学习要点

逆向要潜心学习,入门慢,但是横向提高快!

buu nss上刷完就起飞了

逆向工程学习基础

熟悉如操作系统,汇编语言,加解密等相关知识具有多种高级语言的编程经验有较强的程序理解和逆向思维

耐得住寂寞

常规逆向流程

阶段一:信息收集

使用 strings/file/binwalk/strace 等工具收集信息,并根据这些静态信息进行google/github 搜索

通过信息收集来指导你后续的工作,知道这个文件出自哪里的片段,边打比赛边学习

阶段二:过保护后静态调试

研究程序的保护方法,检查是否存在代码混淆、壳、反调试等技术,并设法破除绕过保护根据平台/语言选择相应反汇编/反编译器对目标软件进行静态分析,并根据一些程序特征快速定位关键代码进行分析

阶段三:结合动态调试

结合动态调试,验证自己的静态分析猜想,在动调过程中进一步熟悉程序功能理清程序流程,

阶段四:写解题脚本逆向

根据正向算法推理逆向算法

写出解题脚本,求解 flag

例题概览

1-控制台程序

提示输入后,验证,决定你得不得到flag

解题过程

1.收集信息,如上所述

2.ida反汇编

3.为了更快分析程序,直接反编译

注意:有的没办法反编译出来,咱就只能看汇编了

4.动态调试

5.理清程序思路,明白了!

2-Crackme

在实战里面就是输入注册码

在题目里面就是flag

3-游戏

常规解法也可以解出来

但如果会开源框架,那解题速度大大增加!

4-移动安全

分析注册码生成逻辑

其他方法:开源框架

CTF逆向赛题共同点

出题套路

输入x

数据处理

判断输入是否正确

怎样出一道题?

怎样接收用户输入x

以什么形式来处理数据对输入做变换 f3(f2(f1(x)))…怎样解密密文判断输入是否正确

直接输出flag

输入就是flag

对输入做固定变换就是flag

真实世界中的逆向

攻击

病毒木马

软件破解

游戏外挂

软件漏洞挖掘与利用

防御

杀毒

木马检测

软件加固

外挂检测

软件漏洞检测与补丁

逆向知识大纲

逆向常用框架


🌸I could be bounded in a nutshell and count myself a king of infinite space.

特别鸣谢:木芯工作室 、Ivan from Russia


相关文章
|
5月前
|
人工智能 算法 安全
所谓“十大GEO公司第一名”靠不靠谱?
AI搜索时代,GEO成流量新战场。各类“TOP1”宣传泛滥,实则多为算法漏洞投机者。企业应警惕虚假头衔,关注技术实力、方法论与案例真实性,选择真正具备研发能力的GEO服务商,构建长期数字竞争力。
|
人工智能 自然语言处理 前端开发
还不懂如何与chatGPT高效交流?保姆级且全面的chatGPT提示词工程教程来啦!(二)进阶篇
这篇文章是chatGPT提示词工程的进阶教程,涵盖了加入鼓励词/行为词、拆分复杂需求、纠正反馈、使用英语提问、角色扮演、限定回答格式、多符咒结合以及参考其他人的提示词和使用提示词插件等技巧。
还不懂如何与chatGPT高效交流?保姆级且全面的chatGPT提示词工程教程来啦!(二)进阶篇
|
11月前
|
存储 人工智能 运维
当四大美女遇上 MetaGPT,一键解锁跨时空AI畅聊新体验
MetaGPT 是一个开源多智能体框架,通过角色专业化分工与流程标准化控制,突破传统单模型系统的能力瓶颈。本方案结合阿里云百炼模型服务和 Serverless AI 开发平台 Function AI,构建支持多角色、多场景的对话应用,并部署至函数计算。用户可快速获取 API-KEY、配置参数并部署项目,体验如“西游取经”、“成语接龙”等示例应用,实现高效协同推理与垂直领域专业内容动态更新,显著降低成本并提升开发效率。
|
API
如何制作外挂
一、先说一下写一个外挂需要什么条件 1、熟练的C语言知识 目前的外挂大部分都是用BC或者是vc写的,拥有熟练的C语言知识是写外挂的基本条件 2、具有很强的汇编基础 一般游戏都不可能有原代码的,必须靠反汇编或者跟踪的办法来探索其中的机理 ,所以有强的汇编基础也是必不可少的条件 3、熟练掌握...
3246 0
|
人工智能 缓存 PyTorch
从零开始的ChatGLM 配置详细教程
这篇文章提供了从零开始配置ChatGLM的详细教程,包括环境配置、下载项目、在HuggingFace下载模型、解决常见报错以及运行项目的最终结果和一些番外内容。
|
Web App开发 算法
软件破解初级实例教程(附工具附图)
最近在群里总是看到很多新朋友在问: 1、“新手怎么学破解啊?”(这是标准的伸手党,baidu google其实很好用) 2、“哎呀XX大牛,我什么基础都没有啊我不会汇编,不会C更不会C++还不会…………总之高手会的我都不会,我能学么?”(明确的告诉你,你能!你不和唐僧一样罗嗦的话你一定能。
12383 1
|
Java
Java 实现 植物大战僵尸 小游戏【附源码】
Java 实现 植物大战僵尸 小游戏【附源码】
701 3
|
消息中间件 存储 NoSQL
Redis使用ZSET实现消息队列使用总结一
Redis使用ZSET实现消息队列使用总结一
438 0
|
图形学
【制作100个unity游戏之27】使用unity复刻经典游戏《植物大战僵尸》,制作属于自己的植物大战僵尸随机版和杂交版5(附带项目源码)
【制作100个unity游戏之27】使用unity复刻经典游戏《植物大战僵尸》,制作属于自己的植物大战僵尸随机版和杂交版5(附带项目源码)
635 0
|
XML JSON 人工智能
Prompt进阶3:LangGPT(构建高性能质量Prompt策略和技巧2)--稳定高质量文案生成器
Prompt进阶3:LangGPT(构建高性能质量Prompt策略和技巧2)--稳定高质量文案生成器
Prompt进阶3:LangGPT(构建高性能质量Prompt策略和技巧2)--稳定高质量文案生成器