程序分析由于程序作了一些处理导致没法正常载入libc中的一些函数,阅读起来可能有些困难。 首先程序进行了沙箱的保护,只保留了open,read和write函数能够调用 程序的装置记录方式 程序有三个函数 shoot函数用来一次性释放掉所有的子弹(释放chunk) load函数可以将申请到的子弹装 ...
unexploitable
程序分析利用ida打开程序会发现如下的情况: 主函数有个read函数有个溢出,看了程序的got表发现程序只有read函数并没有输出。 利用思路考虑修改got表的中read地址的低字节,使它指向一个syscall地址。 我们先read在libc中的偏移是0xf6670,然后用ropper搜索lib ...
TSCTF_rand_heap
程序分析程序主要有三个函数: S函数可以用malloc申请小于0x1000的空间 L函数可以用mmap来申请大于0x1000的空间,如果申请成功返回版本号,如果申请失败则返回一个失败信息 E函数可以用来修改申请的chunk里的信息,另外有一个以当前时间为种子的获得的随机数,当输入相同的随机数时 ...
DNS收集
DNS收集DNS记录 A记录,正向解析,域名toIP PTR记录,反向解析,IPto域名 CNME记录,别名 MX记录,mail.xxx.com,指向一个邮件服务器 NS服务器,dns.xxx.com,指向域名有哪个dns服务器进行查询 TXT记录,主机域名的查询 DNS查询方式 递归查询 迭代查 ...
Booth算法
Booth 算法 用于补码一位乘法 描述 这是一种有符号数的乘法,采用相加和相剪的操作计算补码的数据乘积,考虑$x*y$ 设$[x]_补=x_sx_1x_2x_3…x_n,[y]_补=y_sy_1y_2y_3…y_n$ 运算规则 符号位参与运算切都以补码的形式表示 被乘数一般取双符号位参与运算,部分 ...
ROS+OpenCV读取图像
ROS+OpenCV读取图像新建一个freenect.launch文件,填入一下内容<launch> <!-- 启动freenect驱动 --> <include file="$(find freenect_launch)/launch/freenect.la ...
Ubuntu1604+SLAM+kinectv1
Ubuntu1604+SLAM+kinectv1工具安装 sudo apt-get install cmake git sudo apt-get install gcc g++ Boost安装 sudo apt-get install libboost-all-dev 安装Pangolin安装依 ...
SeamCarving
SeamCarving算法实现核心思想每次选择梯度变化最小的一个路径删除 梯度的计算g(x,y)=|dI/dx|+|dI/dy|根据这个公式可以用sobel算子求得每个位置的梯度 找最小权值路径利用动态规划选取最小路径。由于是考虑8联通的情况,每个位置的值只会传到下方的三个位置。考虑水平方向切割,( ...