摘要: 给一个程序传好参数,现在要判断它的运行趋势,是否会陷入无穷无尽的执行 有没有一个程序可以完成这个判断呢 假设有一个程序H,H说它可以完成这个任务 H说”你告诉我程序是谁,传给程序的参数又是什么“ 我们告诉了H想知道的,程序的名字是P,参数是I,也就是H(P,I) 现在我们写一个让H失望的程序,它的名 阅读全文
posted @ 2021-10-22 11:58 田埂 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 我们常常能覆盖返回地址,却苦于不知道shellcode的地址,这样即使覆盖了返回地址也是枉费心机 当我们看到以下几种情况的时候,就知道往往有栈溢出的出现了 //gcc hello.c -no-pie -fno-stack-protector -z execstack -o hello #includ 阅读全文
posted @ 2021-08-07 13:30 田埂 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 函数指针数组可以用来储存函数,很方便,实例如下: #include<stdio.h> int fun1(int a, int b) { return a + b; } int fun2(int a, int b) { return a - b; } int main() { int (*funs[5 阅读全文
posted @ 2021-06-28 18:41 田埂 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 在结构上开凿孔口,圆孔周边的应力会增加许多,这种现象称之为应力集中。弹性力学给出的解析解如下: 以σφ为例,画出它的应力云图 # coding=utf-8 import numpy import matplotlib.pyplot as plt ax = plt.subplot(111,projec 阅读全文
posted @ 2021-06-13 07:48 田埂 阅读(811) 评论(0) 推荐(0) 编辑
摘要: 题目给了一个pdf文档 这应该是一个PEM文本的截图,从第一行可以看出这是rsa私钥,有了私钥就好说了,直接解密就可以 但是只有部分数据可见,现在的任务应当就是恢复完整的PEM文本 先从图片里提取文字: 把pdf转化为图片,使用imagemagick,采用这条命令安装:sudo apt-get in 阅读全文
posted @ 2021-05-08 22:37 田埂 阅读(497) 评论(0) 推荐(0) 编辑
摘要: 有时候做pwn题会遇libc-2.31.so的c++程序 但是我们的环境是libc-2.23,指定libc后又遇到找不到libstdc++.so.6的情况 在另一博客(https://www.cnblogs.com/zq10/p/14314952.html)的基础上,采用以下方法解决这个问题 跟踪一 阅读全文
posted @ 2021-04-11 16:51 田埂 阅读(381) 评论(0) 推荐(0) 编辑
摘要: 看下程序的逻辑: 输入16个字符,对每个字符加以判断(与v2数组的各个元素比较),判断通过则输出shaktictf{字符串} 使用ida-python,去还原这个字符串,脚本如下: #v2的地址是0x201020 ans="" for addr in range(0x201020+3*4,0x201 阅读全文
posted @ 2021-04-05 21:29 田埂 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 检查下保护机制: 没有canary ida看下逻辑: 采用alloca在栈上申请一块空间,我们可以传入1,这样申请的就是0x10,下面可以写0x78个字节,导致栈溢出 本来我想传入0的,这样就有更多的空间却写rop,但是没得办法,传0它还是申请0x10的空间 这里有许多的gadget,写题的时候没有 阅读全文
posted @ 2021-04-05 16:17 田埂 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 用ida打开文件,hex view页面下看到,有两个.PNG........IHDR 用notepad把第一个.PNG给删掉,然后保存 阅读全文
posted @ 2021-04-05 14:17 田埂 阅读(57) 评论(0) 推荐(0) 编辑
摘要: 这道题是维吉尼亚加密,密文是:ovmogeqfj{yahe_wgwff_avpv_eszahtmac_qxefowoey!},这里可以在线解密,即使不知道key:https://www.boxentriq.com/code-breaking/vigenere-cipher 阅读全文
posted @ 2021-04-05 14:16 田埂 阅读(95) 评论(0) 推荐(0) 编辑