Pwn之栈溢出漏洞利用详解
栈溢出简介栈的概念🖥栈是汇编语言中的一种数据结构,遵循LIFO(Last in Fist Out)原则,即后进先出。
🚍栈的主要操作:压栈(Push)、出栈(Pop)。
📌注意:栈从高地址向低地址存储。
栈溢出原理🎈栈溢出是缓冲区溢出的一种。
🈳栈溢出指向某个变量写入的数据超过其申请的内存空间大小,从而覆盖相邻栈的数据。
🔐我们可以通过这种覆盖相邻栈操作去覆盖函数返回地址从而劫持程序到我们想执行的地方。
函数调用原理图📚想要学会Pwn和最简单的栈溢出,必须熟练掌握函数调用在汇编中的实现过程。
🔗我们目前使用的C语言编写的漏洞程序一般使用栈传递参数。
即调用函数前先将参数从右到左的顺序压入栈中。
具体存储结构图如下:
🔔High Address(高地址):栈底,最先入栈,最后出栈。
🔔Low Address(低地址):栈顶,最后入栈,最先出栈。
栈底是调用者保存的寄存器数据。调用函数前,我们需要将原来存放在EAX、ECX、EDX等寄存器中的值保存起来,以便被调用函数使用寄存器的同时不会造成原来的数据丢失,被调函数返回后只需从栈中取回数据即可。
紧接着是参数,我们 ...
超详细BugkuCTF-杂项靶场通关教程
BugKuCTFBugKuCTF:https://ctf.bugku.com/challenges
签到题关注BugKu微信公众号,即可获得 flag{BugKu-Sec-pwn!},复制输入答题区即可。
这是一张单纯的图片
题目直接给出一张图片,寻找密码。
解题方法:
1.使用010 Editor打开,发现图片末尾有HTML字符实体。
1key{you are right}
2.使用URL编码转换解码,转换出Flag。
1key{you are right}
隐写
(图片已损坏,请下载到本地查看)
题目给出一个压缩包,解压后获得png图片。windows显示不全,Linux提示文件头数据块(IHDR)损坏。
解题方法:
1 ...
超详细bandit靶场通关教程(更新中)
BanditBandit靶场:https://overthewire.org/wargames/bandit/
Level0
Level Goal
The goal of this level is for you to log into the game using SSH. The host to which you need to connect is bandit.labs.overthewire.org, on port 2220. The username is bandit0 and the password is bandit0. Once logged in, go to the Level 1 page to find out how to beat Level 1.
Commands you may need to solve this level
ssh
解题思路:
我们需要连接bandit服务器。参数如下:
主机名:bandit.labs.overthewire.org
端口:2220
用户名:bandit0
密码:bandit0
登录后进入Level1页面 ...
2.《Linux就该这么学》基础命令
查看帮助命令Linux命令格式Linux命令格式:
1命令名称 [命令参数] [命令对象]
man命令Linux命令有成千上万,不同灵活用法更是数不胜数。
我们不可能记住所有命令,所以可以使用 man 命令来查看命令文档。
man命令格式:
1man [命令名]
man命令通常会有一堆文字,我们可以使用快捷键阅读。
快捷键
功能
空格
向下翻页
Page up
向上翻页
Page down
向下翻页
home
前往首页
end
前往尾页
/
从上至下搜索关键词,如: /linux
?
从下至上搜索关键词,如: ?linux
n
查看下一个关键词
N
查看上一个关键词
q
退出帮助文档
man命令得到的帮助文档一般会很长,我们需要理解各个部分的含义:
结构名称
含义
NAME
命令名
SYNOPSIS
命令大致使用方法
DESCRIPTION
介绍说明
EXAMPLES
演示
OVERVIEW
概述
DEFAULTS
默认功能
OPTIONS
具体可用选项
ENVIRONMENT
环境变量 ...
【超详细】VM虚拟机Kali Linux安装教程
# 准备
已经安装VmWare虚拟机
遇到问题耐心百度,仔细看教程
Kali Linux下载地址Kali Linux官网:https://www.kali.org/downloads/
我们在主页找到这个手动安装版本下载。
下载完后是一个iso格式的镜像文件,建议放到桌面,方便后续操作。
Kali安装教程1.打开VM虚拟机,我这里用的是pro15.5版本。
2.点击 创建新的虚拟机。
3.选择 典型(推荐)。
4.选择 稍后安装操作系统。
5.选择 Linux,并选择 Debian 8.x 64位。
6.根据你的喜好为虚拟机命名并选择路径,我这里是Kali,默认路径。
7.选择 磁盘容量,默认是20G,建议30-50G,否则可能安装失败或后续无法正常使用。
8.这就创建完成了,单击 完成。
9.选择 编辑虚拟机设置
10.内存根据实际情况修改,建议改为电脑内存的一般,我是16G内存,所以选择8G。
11.处理器根据你电脑处理来选择,我这里是8核。
12.CD/DVD选项里,选择 使用ISO映像文件,并选择我们下载的Kali镜像。
1 ...
CTF —— 网络安全大赛
前言💻随着大数据、人工智能的发展,人们步入了新的时代,逐渐走上科技的巅峰。
⚔科技是一把双刃剑,网络安全不容忽视,人们的隐私在大数据面前暴露无遗,账户被盗、资金损失、网络诈骗、隐私泄露,种种迹象表明,随着互联网的发展,网络安全需要引起人们的重视。
💂互联网安全从其本质上来讲就是互联网上的信息安全。从广义来说,凡是涉及到互联网上信息的保密性、完整性、可用性、真实性和可控性的相关技术和理论都是网络安全的研究领域。
👨👨👧👦网络安全需要一群网络安全技术人员的维护。而CTF,就是这些人技术竞技的比赛。网络安全大赛或许听上去很熟悉,它到底是什么呢?
CTF概况CTF简介📚CTF(Capture The Flag),中文名夺旗赛。
🆚网络安全人员之间进行竞技的一种比赛。
CTF的含义🔤CTF的英文名可以直接翻译为夺得Flag。
💯参赛团队之间通过进行攻防对抗等形式率先从主办方给出的比赛环境中得到一串具有一定格式的字符串或其它内容,并提交给主办方,从而夺取分数。
🚩为了方便称呼,将需要夺得的内容称为Flag。
CTF的发展历史CTF的起源💻CTF起源于1996年DEFC ...
博客今日成立!你想知道的都在这!
前言👀欢迎访问我的博客!
🔔本博客搭建于2020年10月16日,托管于Github Page,应用Hexo框架和Butterfly主题。
作者简介👦本博客创始人:返璞归真 (Real-Simplicity)
🏆擅长领域:
Ai、Fw、Fl、Br、Ae、Pr、Id、PS等软件的安装与卸载。
精通zhiCSS、daoJavaScript、PHP、C、C++、java、Ruby、Perl、Lisp、python、Objective-C、ActionScript等单词的拼写。
熟悉windows、Linux、Mac、Android、IOS等系统的开关机。
📕喜爱的书籍:
《c语言从研发到脱发》
《C++从入门到放弃》
《Java从跨平台到跨行业》
《Ios开发从入门到下架》
《黑客攻防:从入门到入狱》
《Mysql从删库到跑路》
《服务器运维管理从网维到网管》
《Office三件套从入门到手写》
《Css从绘制框架到改行画画》
😋了解作者更多信息:返璞归真(快戳我)
博客主要内容建立博客的初衷是把我所学所懂记录下来以及收集网络上优秀的文章分享给大家,俗话说:”好记性不如烂 ...