CTF-PWN学习-为缺少指导的同学而生_ctf pwn(1),斩获offer

shell:"shell"通常指的是一个交互式的命令行界面,可以用于执行系统命令和操作。可以说,拿到了shell,你就是服务器的拥有者。自然而然就可以光明正大的查找这台服务器上的flag

解题步骤

  1. 获取题目附件
  2. 将附件复制一份到Linux虚拟机中,使用checksec指令检查程序开启的保护和程序的位数(32位或64位)
  3. 打开题目环境,使用nc指令连接服务器,尝试猜测程序的功能,有时签到题会在你nc上去后,直接提供给你系统权限,此时可直接使用系统指令,寻找flag
  4. 使用对应位数的IDA工具对附件进行反编译,理解并发现其中的漏洞
  5. 分析漏洞,使用python和pwntool库编写攻击脚本playload。
  6. 最后,让你的攻击脚本跑起来,成功拿取权限后,flag即可到手

本博客在B站有配套视频,随博客同步跟新,但博客内容的替换和更新会更加频繁。等博主社恐的毛病处理好,视频会重新录制,现在可能有些糟糕。还望大家见谅

Rotten战队的个人空间-Rotten战队个人主页-哔哩哔哩视频

目录

一、教学用的题库网址

二、刷题加学习

实验1—nc的使用与系统命令执行

B站配套视频

1.test_your_nc    ----nc的使用与系统命令执行1

2.[SWPUCTF 2021 新生赛]nc    ----nc的使用与系统命令执行2

练习题(想起来我就会添加上来,会不断更新,内容不会超出已学习内容)

实验二-权限提升

B站配套视频

1、[NISACTF 2022]ReorPwn?    --system(cmd)

2、 简单点的题找不到了,后面补上   --system(“bin/sh”)

练习题

实验三、向数组填充数据并简单写一个攻击脚本

B站配套视频

实验四-栈溢出基础题型

B站配套视频链接

rip—极简栈溢出

实验5-栈溢出简单利用2-system函数传参数

B站视频链接

视频内容题目

实验6-shellcode和ret2shell

B站视频链接

视频内容题目

三、PWN必备的那些工具总表


一、教学用的题库网址

我会以NSSCTF,BUUCTF平台的题目做教学,后面也会加其他平台。

NSSCTF网址https://www.ctfer.vip/indexhttps://www.ctfer.vip/index

注册教程,这个网站有提示,照着走呗。

BUUCTF

BUUCTF在线评测BUUCTF 是一个 CTF 竞赛和训练平台,为各位 CTF 选手提供真实赛题在线复现等服务。外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传https://buuoj.cn/challenges

二、刷题加学习

实验1—nc的使用与系统命令执行

实验准备-请在实验前完成下载

Linux虚拟机,我觉得CTF选手应该都有吧。没有的话建议装Kali。界面很帅,内置工具多,专业攻击机。CentOS,Unbuant也行,其实没那么高要求。安装教程?先百度去吧,后面有可能我自己补一篇。----

以下提供2种虚拟机软件选择

VirtualBox

VMware

以下提供3种linux系统选择

kali官网

Kali Linux | Penetration Testing and Ethical Hacking Linux Distribution

乌班图官网

Ubuntu系统下载 | Ubuntu

CentOS官网

Download

正式开始

B站配套视频

PWN入门-nc指令使用与PWN基础linux简单指令_哔哩哔哩_bilibili

1.test_your_nc    ----nc的使用与系统命令执行1

BUUCTF平台–test_your_nc

不要跳着看,接下来细节满满开始啦。

可以在搜索栏,搜索题目名称,开启环境。

学习目标:

  1. 学会nc指令的使用
  2. 学会使用拿到系统控制权后的指令执行
  3. kali控制台使用

解题流程(我会很细心的写,不像他们大多数的wtrite up,只能做出来,但很难懂):

开启环境

是不是看到node4.buuoj.cn:27399啦,这个就是你的服务器地址,啥?你个大聪明想用浏览器打开,想啥呢?协议不对啊,这不是HTTP。

基本上题目服务器地址就是以下2种形式

域名:端口号 如本题
IP地址:端口号 如192.168.32.12:10001

打开虚拟机,使用nc连接服务器

开机

桌面右键点击在这里打开终端

大黑框出现了,但至少比Windows那个好看,这个可是半透明的呀,朦胧的美感,啧啧。

写指令

指令形式
nc ip 端口号
nc 域名 端口号

本题
nc node4.buuoj.cn 27399

连上去发现光标不动了

尝试输入指令ls(linux系统中显示当前文件下文件名的指令) ,红色为你输入的指令,绿色是执行后显示的当前目录下的文件名。看到flag了吧。是不是很想打开

使用cat指令可以读取Linux上的文件

cat 文件名

本题:
cat flag

去吧,提交你的flag。

2.[SWPUCTF 2021 新生赛]nc    ----nc的使用与系统命令执行2

学习目标:

  1. 学会nc指令的使用
  2. 学会使用拿到系统控制权后的指令执行
  3. 学一点点过滤绕过(大部分题不会有要求绕过过滤)

开启环境

打开虚拟机,使用nc连接服务器

写指令

指令形式
nc ip 端口号
nc 域名 端口号

本题
nc node1.anna.nssctf.cn 28456

弹出乱七八糟的玩意。

看不懂,去把附件下载下来

里面是python代码,分析一下

权限直接给我们了,但看程序逻辑,当用户输入列表blacklist中字符串时,自动结束程序。

此时如果输入ls(Linux系统中查看当前目录下文件的指令),就会退出。所以需要绕过这个过滤。

使用l\s,执行时l\s=ls,但在字符串判断时肯定不是相同的。

如图,我输入了l\s,列出了当前目录下的文件,那么大个flag看到没有,那接下来就要访问它。

我们使用cat指令,读取文件(回头看一下,cat也被过滤了,没事,再加条,变成c\at flag)

cat 文件名
cat flag

此题存在过滤
要绕过处理

c\at$IFS$9flag

$IFS$9可以替换空格

出来了。

练习题(想起来我就会添加上来,会不断更新,内容不会超出已学习内容)

平台+2:Bugku和ctfshow

首页 - Bugku CTF国内最活跃的CTF平台,每日更新题目。外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传https://ctf.bugku.com/ctf.showhttps://ctf.show/

1.Bugku --瑞士军刀

2.ctfshow-PWN签到题

3.NSSCTF-Does your nc work?

4.BUUCTF-others_shellcode

实验二-权限提升

实验前准备

  1. IDA7.7pro

学习目标:

  1. 了解权限提升
  2. IDA简单使用

所谓权限提升就是获取服务器系统权限,执行指令。最常见的就是system()。

PWN的过程,用户机发起nc链接,与控制访问程序交互,利用漏洞让控制访问程序执行system(),从而运行我们输入的系统指令。

B站配套视频

PWN入门2-PWN过程与权限提升_哔哩哔哩_bilibili

1、[NISACTF 2022]ReorPwn?    --system(cmd)

下载附件,将附件赋值一份到linux中,执行checksec指令,可以查看这个控制程序的信息。

第一行显示了64位,所以我们可以用IDApro7.7的64位版本打开

直接点击OK

这个页面按下F5,反汇编为伪代码

看到关键函数system()

点进去看一下,是不是我们要的那种。双击那个system(a)

好极了,就是这个。再来看一下变量command是如何传进去的,左上角箭头,回到历史记录

再分析一下程序,用户的输入被存到了变量a中,a经过fun函数后,传入system函数执行,也就是说,command就是a,也就是用户的输入。

再双击fun看一下,有没有特殊处理

经典的字符串倒置代码,也就是说,它会把你的输入倒过来,即ls->sl ,cat flag->galf tac

所以我们输入指令要倒着输入.

2、 简单点的题找不到了,后面补上   --system(“bin/sh”)

其实和system(cmd)那种没太大区别,就是这个会拉起控制台执行命令。效果其实一样

练习题

。。。待补充

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数网络安全工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注网络安全获取)
img

一、网安学习成长路线图

网安所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

二、网安视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
在这里插入图片描述

三、精品网安学习书籍

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述

四、网络安全源码合集+工具包

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

五、网络安全面试题

最后就是大家最关心的网络安全面试题板块
在这里插入图片描述在这里插入图片描述

一个人可以走的很快,但一群人才能走的更远。如果你从事以下工作或对以下感兴趣,欢迎戳这里加入程序员的圈子,让我们一起学习成长!

AI人工智能、Android移动开发、AIGC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算

g-blog.csdnimg.cn/e54c0bac8f3049928b488dc1e5080fc5.png)

五、网络安全面试题

最后就是大家最关心的网络安全面试题板块
在这里插入图片描述在这里插入图片描述

一个人可以走的很快,但一群人才能走的更远。如果你从事以下工作或对以下感兴趣,欢迎戳这里加入程序员的圈子,让我们一起学习成长!

AI人工智能、Android移动开发、AIGC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算

  • 12
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值