如果你看到标题就知道我在说什么,那么出门左拐,自己动手写一下伪代码。只有自己亲手写出和画出,才能更好的掌握。 现在有一个链表,Head指向头 然后使用temp保存Head中原来含有的结点的第一个结点,此时p指向第一个待插入结点 此时将head尾部置空 将 p 加入head头部,然后 p 后移一位。往 ...
分类:
其他好文 时间:
2020-02-25 20:16:30
阅读次数:
87
头一次见这种题。。。 32位程序,开启了堆栈不可执行。 ida看一眼伪代码。main函数跟前有个函数,进去看一眼。 就一个gets函数,干净利落。。。 可以进行溢出。听大佬们说,这种情况,就是特别ida看起来特复杂,就是静态编译的结果。静态编译就不会调用libc中的东西,所以我们也不存在泄露版本利用 ...
分类:
其他好文 时间:
2020-02-22 21:43:43
阅读次数:
122
君子远庖厨,万物皆备于我。—孟子 这篇文章主要总结程序的主要要素,以及程序的构成是什么样子的。最后说说我学到的一种奇特的表示算法的方式—伪代码。 让我们开始吧! 一个程序应该包括以下两个主要要素: 1.对数据的描述。在程序中要指定数据的类型和数据的组织形式,即为数据结构。 2.对操作的描述。即为操作 ...
分类:
编程语言 时间:
2020-02-20 11:39:38
阅读次数:
65
此题考整型的有符号无符号的东西。。。 下载文件还是,先检查一下保护。 64位程序,只开启了堆栈不可执行,看一下ida的伪代码。 大概流程就是先让你输入一个数,这个数就是后面read的可以输入的长度,要想进行溢出,就必须有足够的长度,但是有一个校验,不让这个数大于十,我们得想办法绕过这个校验,让我们可 ...
分类:
其他好文 时间:
2020-02-19 14:55:01
阅读次数:
90
这道题是一道基本题,正因为它经典,所以需要重点记录一下。 这道题考察格式化字符串泄露canary,然后rop获得libc版本,之后拿到shell。拿到程序之后我们先检查一下保护。。。 开启了堆栈不可执行和canary保护。接下来ida看一下伪代码吧! main函数中调用了三个函数,我们一个一个点进去 ...
分类:
其他好文 时间:
2020-02-19 13:23:41
阅读次数:
93
恢复算法 1、L1 minimization 这是一个凸优化问题,类似于统计学中的LASSO。 优化算法有: 特点: L1最小化的其他形式: 2、Matching Pursuit MP算法(匹配追踪算法) 算法描述: 作为对信号进行稀疏分解的方法之一,将信号在完备字典库上进行分解。假定被表示的信号为 ...
分类:
其他好文 时间:
2020-02-19 13:06:15
阅读次数:
114
本篇文章是原文的译文,然后自己对其中做了一些修改和添加内容(随机森林和降维算法)。文章简洁地介绍了机器学习的主要算法和一些伪代码,对于初学者有很大帮助,是一篇不错的总结文章,后期可以通过文中提到的算法展开去做一些实际问题。Google的自驾车和机器人得到了很多新闻,但公司的真正未来是机器学习,这种技... ...
分类:
编程语言 时间:
2020-02-18 16:39:58
阅读次数:
110
花了好多天,终于把这个题彻底弄懂了。。。自己太菜了 下载文件,首先checksec检查一下保护。 只开启了堆栈不可执行,接下来拖到IDA看一下C的伪代码。 大致先让你输入,然后再次让你输入。 第一次输入的话,会将输入的数据保存到bss段,第二次是向栈中输入数据,并且可以溢出。经过计算,正好可以溢出到 ...
分类:
其他好文 时间:
2020-02-18 13:32:01
阅读次数:
98
@Override是伪代码,表示重写。(当然不写@Override也可以),不过写上有如下好处: 1、可以当注释用,方便阅读; 2、编译器可以给你验证@Override下面的方法名是否是你父类中所有的,如果没有则报错。例如,你如果没写@Override,而你下面的方法名又写错了,这时你的编译器是可以 ...
分类:
其他好文 时间:
2020-02-13 16:53:45
阅读次数:
50
Exceptions用于处理Run-time Error; //文件读取的异常捕获伪代码 try{ open the file; determine its size; allocate that much memory; read the file into memory; close the f ...
分类:
编程语言 时间:
2020-02-13 09:45:51
阅读次数:
67