自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 缓冲区溢出攻击原理及防范

在libc(熟悉C的朋友应该知道,现在几乎所有的C程序连接都是利用它来连接的)中的一部分代码段会执行“exec(something)”,当中的something就是参数,使用缓冲区溢出改变程序的参数,然后利用另一个缓冲区溢出使程序指针指向libc中的特定的代码段。攻击代码要求执行“exec(‘/bin/sh’)”,而在libc库中的代码执行“exec(arg)”,其中的“arg”是个指向字符串的指针参数,只要把传入的参数指针修改指向“/bin/sh”,然后再跳转到libc库中的响应指令序列就可以了。

2025-06-27 10:17:43 459

原创 实训Day4 CTF writeup

本题通过查看网页源码中的注释,发现了隐藏的备份文件,并从中获取了用户名和密码,成功登录并获取了flag。在今后的解题中,可以继续加强对于下载链接的处理能力,以及对于系统文件和敏感信息的分析能力。在解题过程中,对于压缩包密码的猜测和暴力破解能力,以及对于压缩包二进制文件头和尾的熟悉程度起到了关键作用。我们发现有一个check.php,因为题目说备份失误,所以有文件备份的存在,我们就访问check.php.bak。打开网页出现了以下页面,有一个文件需要下载,我们按F12查看源码,发现了下载文件的链接地址。

2025-04-26 16:05:53 898

原创 实训Day3

2018年10月22日,测试站点(Tomcat中间件)遭到攻击者入侵,攻击者利用Struts2框架的s2-016漏洞上传WebShell(a.jsp和index_bak.jsp),获取服务器权限,并尝试提权(CVE-2017-16995)。删除WebShell(a.jsp和index_bak.jsp)及提权脚本(a.c和a)。index_bak.jsp(大马,密码为“fku_lanzin”):通过a.jsp上传大马index_bak.jsp。尝试提权未成功(a.c执行失败)。测试环境,未波及生产系统。

2025-04-24 20:52:41 382

原创 实训Day2

1、SYN半链接攻击:攻击者发送大量的SYN包却不完成第三次握手,这种攻击方式会消耗服务器资源。2.SQL注入攻击:通过http过滤出相关协议的数据包,观察数据包的参数可以判断黑客注入技术为布尔盲注、获得了数据库的长度和数据库名称。3、web入侵溯源:黑客的攻击路径:通过目录爆破获取后台地址、弱口令爆破获取管理员权限、利用漏洞上传webshell、最终控制系统。(3)获取数据库信息(名称、表、字段)-用010editor打开图片,根据详情信息用进制转换器转换宽和高,在010editor中更改宽和高。

2025-04-22 17:41:43 214

原创 实训Day1

1.今天的实训学到了用御剑扫描目录是渗透测试的重要性,通过扫描目录可以发现许多有用的信息。可以采用白名单的过滤方式,白名单比黑名单更加安全,白名单是限时可以通过的,而黑名4.单只限制不能通过的。4.文件不能上传可以通过修改文件的扩展名,比如说把shell.php更改为shell.php.jpg达到欺骗的效果,如果服务器只检查最后一个扩展名就可能成功上传。2.白云新闻搜索中通过测试是否可以SQL 注入,可以的话根据SQL语句查询出数据库,然后一步步查询出表,字段名,表中的数据,最终得到flag。

2025-04-21 22:32:31 160

原创 buuctf crypto:变异凯撒

可以看出每个字母相差由上一个相差量加1,最后得出flag{Caesar_variation}l--108,f--102 相差6。a--97,z--90 相差7。f--102,a--97 相差5。g--103 ,_--95相差8。

2024-06-18 12:57:13 586

原创 消息摘要算法

(1)MD5①英文全称为Message-Digest Algorithm5。中文名称为消息摘要算法第五版。②输入:任何长度的字节流。输出:128位二进制(常以32位十六进制字符显示)。③过程:算法以512位为一个分组来处理输入的信息,每一分组又被划分为16个32位子分组,经过了一系列复杂的数据填充、分组循环和换位拼接处理后,算法输出四个32位分组,这四个32位分组级联后生成一个128位(16字节)的散列值。加密过程不需要密钥,加密后的数据无法被解密。

2024-06-17 16:00:05 2067

原创 buuctf crypto:传统知识+古典密码

1.由天干地支表可以得出 辛卯,癸巳,丙戌,辛未,庚辰,癸酉,己卯,癸巳对应的数字分别为28 ,30,23, 8,17 ,10,16,30.题目中又说信的背面加上“+甲子”,一甲子是60年所以最后的数字分别为88,90,83,68,77,70,76,90。4.再用凯撒密码,可以看到非常显眼得一串字母就是答案了。2.将这些密码转换成ASCII码,得到XZSDMFLZ。3.再用栅栏密码解得XMZFSLDZ。

2024-06-17 15:44:14 799

原创 buu Crypto:windows密码

用记事本打开之后发现两个冒号之间都是32个字母,想到MD5是固定32位输出,然后对这8个通过MD5在线解密网站解密,最后得出结果。下载后发现文件名是hash结尾。

2024-06-15 23:38:33 302

原创 三种映射方式的比较

每个缓存块可以和若干个主存块对应,每个主存块只能和一个缓存块对应。映射方式简单,但是不够灵活,容易导致快块冲突。主存中的任一块可以映射到缓存中的任一块。最灵活,不容易冲突,但成本高。某一主存块只能映射到某一缓存组中的任一块。兼顾了灵活性和成本。

2024-05-06 16:37:19 373

原创 按字寻址和按字节寻址

例如内存为64B,所以有64个字节,有64个地址,又因为一位可以访问2^n个地址,所以2^n=64,解得n=6,所以是6位。字的大小是可以变化的。字就看字长,如果字长是16位,那么它的字就是16/8=2B。机器2:1字=16/2=2B (2^24*1B)/2B=2^23=(2^3)*(2^20)=8M。按字寻址:机器1:1字=32/8=4B (2^24*1B)/4B=2^22=(2^2)*(2^20)=4M。

2024-04-11 21:13:39 993 2

缓冲区溢出攻击原理及防范

缓冲区溢出攻击原理及防范

2025-06-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除