- 博客(33)
- 资源 (6)
- 收藏
- 关注
原创 给kali的Metasploit下添加一个新的exploit
首先在/usr/share/metasploit-framework/modules/exploits/目录下新建一个自定义文件夹,例如
2014-11-10 11:29:11
25627
原创 crackme.chm之aLoNg3x_1.exe
点about按钮可以知道这个程序是让我们去掉按钮,让logo显示出来;首先用dede载入程序,看下有几个自定函数
2014-11-07 23:22:28
1594
原创 crackme.chm之figugegl_2b
使用Resource Hacker+IDA定位程序验证逻辑,#includeusing namespace std;/*void main(HWND hWnd){ UINT iSLen; // ebx@1 int result; // eax@2 UINT iNLen; // esi@3 int i; // edi@5 char szSerial[42]; // [
2014-11-07 16:29:04
751
原创 Linux内核学习笔记之磁盘I/O(十一)
还记得文件系统中,高速缓冲区读取盘块操作,我说过它调用的设备读写接口是void ll_rw_block(int rw, struct buffer_head * bh) 而这个接口最后调用的磁盘操作接口就是void rw_hd(int rw, struct buffer_head * bh) 接下来我将以这个为切入点,详细介绍磁盘读取操作(1)计算要读取
2014-01-28 10:16:32
1559
1
原创 Linux内核学习笔记导读
这个学习笔记是我记录自己根据《Linux内核注释》学习Linux0.11内核源码的过程,内核学习有点像悬疑片,只有看到最后才能理解整个剧情,而原先的种种片段所引发的猜测可能都是错误的,所以有问题没关系,慢慢看下去,自然就能明白了~ 所有的学习资料的下载我已经放在笔记一中了,包括Linux内核注释pdf和Linux0.11内核源码,如果没有自己认真研究过,看我的笔记可能只是增加了点扩展知识
2014-01-27 23:43:41
1278
4
原创 Linux内核学习笔记之进程创建(十)
进程的创建几乎调用了操作系统所有的功能模块,研究进程创建流程能让我们贯穿理解整个操作系统,并解开前面各个模块遗留问题的最好途径~Linux的进程创建分两种模式fork和fork+do_execve,下面我们先来看下第一种模式倚天剑------fork方式 首先我们来看下系统调用服务程序fork是什么样子的.align 2_sys_fork: call _find_empty_
2014-01-27 22:56:04
1362
原创 Linux内核学习笔记之内存分配(九)
上节我们揭秘了Linux系统移形换影的秘密,这节我们将一起见证Linux系统另一“无中生有的幻术”------内存分配大法~周流六虚功------空闲内存分配 内存对于进程就像空气对于我们,提供空闲内存是操作系统最基本的功能之一,如果学过操作系统就应该知道,计算机内存的分配是按内存页来的,每页的大小为4K。进程哪些地方需要申请内存页呢?进程的页目录、页表、栈、堆、
2014-01-27 13:47:52
1017
原创 Linux内核学习笔记之进程切换(八)
Linux通过时间片来控制每个任务的执行时间,每经过一个时间片就触发一次切换,通过不停的来回切换执行任务,当切换速度很快的时候,就像视觉暂留一样,给用户造成一个任务并行效果的假象。今天我们将一起来探究这个“幻术”背后的秘密~ 我将任务切换分为两种方式,一种是时间片到了,硬件触发时钟中断导致进程发生的切换;还有一种是进程等待资源而进入睡眠状态导致的进程切换,下面让我们一起来见证奇迹的时刻!
2014-01-26 23:39:49
1308
原创 Linux内核学习笔记之中断与系统调用(七)
我们知道用户程序访问内核代码的唯一方式就是通过系统调用,那系统调用是怎么实现的?具体过程是什么?本节我们将带着这两个问题来剖析源码~ 大家是否还记得我在笔记(四)中讲解的操作系统初始化,其中在sched_init中完成了系统调用中断门的设置,所以系统调用是通过软中断来实现的。那么中断调用是个肿么样的过程?在继续研究这个问题前,我们要先复习一个重要的数据结构------栈。栈在程序的运行中
2014-01-26 13:21:29
1302
原创 Linux内核学习笔记之文件系统(六)
文件管理是操作系统主要功能之一,也是难点之一。想要读懂这部分源码,就要理解文件系统的相关数据结构的设计理念,为什么要这么设计?带着这个问题我们将开启我们的揭秘旅程......九阳神功残卷(一)------磁盘结构 这个是磁盘的物理结构,磁盘就是由那一个个小方块组成的,它也就是磁盘的最小存储单元------扇区。我们将所有Platter(盘面)的所有Track(磁道)拉直连接到一起
2014-01-22 00:37:12
967
原创 Linux内核学习笔记之高速缓冲管理(五)
上节我们已经介绍过高速缓冲区的一些内容,为了解决内存磁盘的数据交互效率问题,操作系统引入了高速缓冲块,其存储介质是内存,大小和磁盘盘块一样为1k。六脉神剑残卷(一)------高速缓冲区初始化 首先我们来看下高速缓冲区在内存中的位置 然后我们来看下在调用buffer_init初始化后这段黄色内存的样子(其中缓冲区低端就是上面的end,缓冲区高端就是上面
2014-01-21 23:02:04
1032
原创 Linux内核学习笔记之main函数(四)
终于见到操作系统的main函数了,在被保护模式下的汇编蹂躏那么久,终于见到我们“可爱”的C语言了,鸡冻不已啊~让我们先一睹操作系统真容void main(void){ time_init(); tty_init(); trap_init(); sched_init(); buffer_init(); hd_init(); sti(); move_to_user_mode();
2014-01-21 13:35:16
2547
原创 计算逻辑地址
不知道有木有骚年和我一样曾经疑惑过,我们说的分段机制转换最开始的逻辑地址哪里来的,比如程序的指令地址?要明白这个,我们首先需要知道代码编译成二进制后在磁盘上是怎么组织的(以windows下的exe文件为例) 举个栗子:.386.model flat,stdcallOption Casemap:noneinclude windows.incinclude user32
2014-01-21 01:26:19
4570
原创 Linux内核学习笔记之系统启动(三)
分段机制和分页机制,共同构成了保护模式下的地址映射机制,也为多任务操作系统以及程序部分加载的实现提供了支持。本节我们将探究分页机制的原理,并结合源码来研究在启动CPU分页机制前,操作系统都做哪些设置。1.再练神功 九阴真经残卷(四)----分页机制 首先在开始讲解分页机制前,我们要明白三个地址的含义:逻辑地址、线性地址和物理地址。程序运行的时候,所有的地址都是逻辑地址,
2014-01-21 01:11:19
1347
原创 Linux内核学习笔记之系统启动(二)
上节跳转到内存地址0x0处开始执行内核代码前,已经开启了保护模式,所以在讲解Linux代码前,不得不先给小伙伴们介绍下保护模式下的基础知识(可以先粗略看下,如果初试神功的内容理解有点困难,再回头来看会有更好效果)。1.初练神功九阴真经残卷(一)------段描述符 为什么要搞出个段描述符呢?这个就要将下CPU的历史了,很早的实地址模式的时候CPU的更新速度并没有内存块
2014-01-20 23:21:05
1149
原创 Linux内核学习笔记之系统启动(一)
每天一开机就要接触操作系统,一直就很好奇这头“大象”到底是什么样子的?我们要运行程序,必须先启动操作系统,但是刚开机的时候又是谁运行了操作系统呢?开机的那刻究竟发生了什么?接下来让我们一起来揭开操作系统这头“大象”的神秘面纱~我先引用《Linux内核注释》的一段原话来让大家对开机后发生的情况有段简要的认识,然后结合代码来详细描述这个过程:Linux 的最最前面部分是用 8086 汇编语言编写的
2014-01-20 18:27:32
1504
转载 Linux pthread_create 如何设置 线程的detach 状态(原作者:祥龙之子)
原文链接http://www.cnblogs.com/cy163/archive/2008/08/18/1270181.html 引言 线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者。传统的Unix也支持线程的概念,但是在一个进程(process)中只允许有一个线程,这样多线程就意味着多进程。现在
2011-08-15 11:28:54
760
Linux内核0.11源码和Linux内核注释pdf
2014-01-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人