- 2024-11-18笔记本(3)
我记得当初有写这个在某个地方啊==找不到了...就是一些二进制文件知识和exp中一些代码在libc中,就开始很常见的使用elf=ELF('/pwn')write_plt=elf.plt['write']......got.....got.........这两是用来查询[]内函数的plt和got的地址并赋值给左边变量,还有相似的main=elf.sym['mai
- 2024-11-16starrycan的pwn随笔——ELF文件和延迟绑定机制
一.ELF文件结构0x01什么是ELF文件1.linux环境中,二进制可持性文件的类型是ELF(ExecutableandLinkableFormat)文件。类似windows下的exe2.elf文件的格式比较简单,我们需要了解的就是elf文件中的各个节、段等概念3.程序elf的基本信息存在于elf的头部信息中,这些信息包括指令的运
- 2024-10-25ctfshow-pwn-前置基础(20-22)
pwn20-pwn22是关于.got节跟.got.plt节的。这3道题的问题描述全是一样的,全都是问.got跟.got.plt是否可写以及他们的地址是什么,然后根据这些信息来拼成flag。那么关于.got和.got.plt的内容非常复杂,这里呢我也不解释了,推荐一个牛逼的博主的文章,大家可以自行去了解一下这两个节。聊聊
- 2024-10-24怎么搭建图片转文本GOT-OCR2.0
Github地址http://gitlab.xiaoxingcloud.com/ai/GOT-OCR2.0.git介绍GOT-OCR2.0是一款用于图片转文字开源软件环境查看系统环境#lsb_release-aNoLSBmodulesareavailable.DistributorID: UbuntuDescription: Ubuntu22.04.5LTSRelease: 22.04Codename: jammy#
- 2024-10-19初探AI之got-ocr2.0大模型本地部署与遇到的各种坑处理
一、环境搭建1.安装cuda,本人使用的是12.1版本,下载地址:https://developer.nvidia.com/cuda-12-1-1-download-archive2.安装conda3,https://blog.csdn.net/m0_73634846/article/details/1363783503.准备代码环境原文:https://mp.weixin.qq.com/s/PQVrlr5FoVb89Mivzi7pLA顺序执
- 2024-10-16GOT-OCR2.0:本地部署基于QWen0.5B大模型的强大OCR服务
这两天大佬团队开源了基于千问大模型OCR项目的视频多次被刷到,各博主对其识别能力也是给予充分的肯定, 作为CV工程师的小编平时工作中OCR的需求也是络绎不绝,如果真如各博主所说是跨时代的产品,那必须也要盘它一盘;github:GitHub-Ucas-HaoranWei/GOT-OCR2.0:Offici
- 2024-09-18General OCR Theory: Towards OCR-2.0 via a Unified End-to-end Model
摘要传统的OCR系统(OCR-1.0)越来越无法满足人们对智能处理人造光学字符的需求。在本文中,我们将所有人造光学信号(例如,普通文本、数学/分子公式、表格、图表、乐谱,甚至是几何形状)统称为“字符”,并提出了通用OCR理论以及一个优秀的模型,即GOT,以促进OCR-2.0的到来。GOT拥有5.8亿参
- 2024-09-02off by one 改got表
BUU——npuctf_2020_easyheapoffbyone利用:每次申请chunk程序默认申请一个0x10大小的chunk,用于存自己申请的chunk的大小和地址,正是利用这个地址,将其修改为free_got泄露libc基地址,之后再将free地址修改为system函数,传入"/bin/sh\x00"即可system("/bin/sh")。如何修改:申请两个chu
- 2024-08-16ret2csu出题小记
第一次出题,没什么经验,按照https://www.cnblogs.com/bpcat/p/16878676.html这篇文章简单改的代码(这文章讲的还算细,跟着动调就好了)直接抄exp肯定是不行了,多加了几句话导致栈空间有一丢丢偏移,但是影响不大,这里展现下当时卡住的地方卡在jmp的位置了,爆段错误,于是去拿其他
- 2024-08-11pytorch_geometric的Planetoid出现“TypeError: expected np.ndarray (got matrix)”的问题和解决方法
问题和解决方案运行GCN的例子的时候,出现了这个错误:out=torch.from_numpy(out).to(torch.float)TypeError:expectednp.ndarray(gotmatrix)解决方案:在torch_geometric.io.planetoid.py中添加importnumpyasnp,将out=torch.from_numpy(out).to(torch.float)
- 2024-08-11GOT & PLT 易于理解的个人笔记
为什么我们用动态链接和GOT表我们知道静态链接就没那么多事,直接把全部要用的函数都绑定在一起,各个变量和函数之间的偏移量当然能算出来。但是这也恰恰是静态链接的缺点,相同的代码段反复调用真是太臃肿了!于是我们决定把常用的库单独拿出来给大家用,我们还知道,.text是不可修改的,
- 2024-08-11《If I Ain't Got You》
Somepeopleliveforthefortune,有些人为了财富而活,Somepeoplelivejustforthefame,有些人只是为了成名而活,Somepeopleliveforthepoweryeah.有些人为了权利而活。Somepeoplelivejusttoplaythegame,有些人只是为了游戏而活,Somepeoplethinkthantth
- 2024-07-30格式化字符串(summer2024_fmt)
参考博客[参考博客]:https://blog.csdn.net/ysy___ysy/article/details/135700140[参考博客]:https://blog.csdn.net/2402_83422357/article/details/139180404戳此切大佬博客https://blog.csdn.net/Morphy_Amo/article/details/122215773https://blog.csdn.net/song_lee/
- 2024-07-20go_test我使用
go_test一、Test1.使用介绍测试函数以Test开头,只能有一个t*testing.T参数输出:通过*testing.T参数的断言函数检查。执行:运行gotest时自动运行2.用例packagemainimport"testing"funcHello()string{return"Hello,world"}funcTestHello(t*testing.
- 2024-07-20动态链接库的实现原理是什么?
今天简单聊聊动态链接库的实现原理。假设有这样两段代码,第一段代码定义了一个全量变量a以及函数foo,函数foo中引用了下一段代码中定义的全局变量b。第二段代码定义了全局变量b以及main函数,同时在main函数中调用了第一个模块中定义的函数foo。接下来编译器出场,编译器会把这
- 2024-07-16暑期集训ezret(学会看gdb)
64位ida打开并反汇编的main():进入input_person函数:仔细看可以找到一个特别的函数名win,点进去发现是后门:根据ida看出程序的基本逻辑是输入name和age,输出age和name很多时候ida会抽风(bushi),就比如operater=里面的参数没给,不过没关系,我们可以猜(),可以看出input_person里面v11(age)
- 2024-06-09init_array与got劫持——[zer0pts 2020]easy strcmp
只是在顺思路,wp参考了2位大佬文章列表|NSSCTF[Zer0pts2020]easystrcmp分析与加法-CSDN博客题目Die 虚拟机运行一下 没有输入,直接报错退出了IDA 很奇怪啊,就是一个比较从我们运行直接报错来看,我们运行时a1>1这个条件是不成立的我的最初思路就是调试把a1改了或
- 2024-06-01hook的几种方式及原理学习
原文概述对于大型的工程项目,依赖许多人的配合,包含大量不同的代码库与服务,有的我们能够访问程序的源代码,有的可以访问程序的可重定位文件,有的可以访问到可执行文件及其环境,假如我们想在在不同的层面改变或者添加一些逻辑,操作系统、编译器以及程序语言、代码库等都提供了一些机制
- 2024-05-29ctf-pwn 学习前知(1)
学习pwn这个抽象到一定程度的东西,前期的坐牢是一定的,一个题目延申出的新知识也是超多的。所以写一个这个板块记录一下自己学习的东西,或许会有(2),(3)....checksec拿buuctf的test_your_nc为例子可以看到checksec后出现了很多东西Arch:amd64-64-little(程序架构信息,这是一个64位
- 2024-05-19常回家看看之堆溢出
- 2024-05-08buuctf-pwn-ciscn_2019_c_1-ret2libc
检查一下保护情况ida里选项2,3都没有什么重要的信息,直接看选项1发现栈溢出漏洞,不过程序对输入的字符串有一个异或加密,这里可以构造异或后的payload,利用程序来解密,或者可以直接在payload第一位加上'\x00',直接截断payload后面的异或操作用cyclic测一下溢出点,得到88找一下system
- 2024-04-20newstartweek3部分题解
64位利用格式化字符串修改got表例题:newstartweek3putorsystem老规矩先checksec和代码审计:看到开了canary和NX(但是对于这道题的话canary是没有用的),然后源码这边也没有发现有system函数,也没有后门函数,所以我们需要自己在libc里面找,然后就有bin/sh那么我们就只用把got表里
- 2024-04-20堆块的重叠
堆块重叠对堆的了解不是很多,大部分都是自己网上找的资料了解的,以后每一道堆题我都会仔仔细细的写出来。这里先拿一道做示范题目链接:链接:https://pan.baidu.com/s/1HbHkdHbEzt4UIe44gW8uqg提取码:Ch13看保护,pie保护关闭,延迟绑定,got表可以修改64位ida载入我们看看实现的功能
- 2024-03-31政安晨:【Keras机器学习实践要点】(十一)—— 编写自己的回调
目录导言设置Keras回调概述回调方法概述全局方法用于训练/测试/预测的批量级方法时代级方法(仅限培训)基本示例日志的使用self.model属性的使用Keras回调应用示例提前停机,损失最小学习率调度内置Keras回调政安晨的个人主页:政安晨欢迎
- 2024-03-29转: ltrace 是如何工作的(2016)
http://arthurchiao.art/blog/how-does-ltrace-work-zh/strace 是一个系统调用,也是一个信号跟踪器(signaltracer),主要用于跟踪系统调用,打印系统调用的参数、返回值、时间戳等很多信息。也可以跟踪和打印进程收到的信号。在前一篇文章strace是如何工作的 中介绍过, strace