![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux
文章平均质量分 77
ender049
这个作者很懒,什么都没留下…
展开
-
安装KDevelop开发第一个C/C++程序
注意:我用的是Ubuntu,它的apt太好用了,用其他版本的就要注意了!1. KDevelop只是一个IDE,要想编译c/c++程序,要安装make和GCC,以及头文件,那就从这里开始:sudo apt-get build-dep gcc sudo apt-get install build-essential 2.安装KDevelopsudo apt-get inst转载 2007-08-15 21:03:00 · 13013 阅读 · 0 评论 -
LKM 注射
--[ 内容 1 - 介绍 2 - ELF 基础知识 2.1 - The .symtab section 2.2 - The .strtab section 3 - 玩转 loadable kernel modules 3.1 - 模块加载 3.2 - 修改 .strtab section 3.3 - 插入代转载 2007-10-22 02:30:00 · 1155 阅读 · 0 评论 -
Linux后门系列--由浅入深sk13完全分析
Linux后门系列--由浅入深sk13完全分析作者 wzt联系方式 wzt@xsec.org个人网站 http://tthacker.cublog.cn http://xsec.org一、简介二、sk的特色功能三、sk13的安装使用四、install.c执行流程五、install代码完全解析六、总结七、参考八、WNPS简介九、感谢一.简介.我们经常可以从一些搞linux入侵的朋友那里听到他们讨论s转载 2007-10-03 16:14:00 · 1256 阅读 · 0 评论 -
Linux 2.6版内核中通过模块获取sys_call_table地址的方法
朱熹之 2007-1-4 09:09转载 2007-11-06 15:41:00 · 1221 阅读 · 0 评论 -
linux内核空间与用户空间信息交互方法
本文作者:康华:计算机硕士,主要从事Linux操作系统内核、Linux技术标准、计算机安全、软件测试等领域的研究与开发工作,现就职于信息产业部软件与集成电路促进中心所属的MII-HP Linux软件实验室。如果需要可以联系通过kanghua151@msn.com联系他。 摘要:在进行设备驱动程序,内核功能模块等系统级开发时,通常需要在内核和用户程序之间交换信息。Linux提供了多种方法可以用来完成转载 2008-07-14 11:56:00 · 1388 阅读 · 0 评论 -
ubuntu下压缩和解压缩的命令用法
//// 转 superstar_gu 的百度空间//http://hi.baidu.com/superstar_gu/blog/item/2772124e3e7f150bb3de0535.html.tar解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)---------------------------转载 2008-05-08 11:40:00 · 1071 阅读 · 0 评论 -
Linux on-the-fly kernel patching without LKM
这篇文章的原文是Phrack58-0x07 Linux on-the-fly kernel patching without LKM,其中提出了一种不借助LKM(Loadable Kernel Module),直接修改系统调用实现Rootkit的技术。在阅读本文时,最好能够对照原文和实现这项技术的代码,以免译者可能出现的理解错误给您造成误解:)。 作者:sd&devik 翻译:nixe0n 1.简转载 2008-05-21 22:17:00 · 1064 阅读 · 0 评论 -
The Linux Kernel Module Programming Guide
The Linux Kernel Module Programming GuidePeter Jay SalzmanMichael BurianOri PomerantzCopyright © 2001 Peter Jay SalzmanThe Linux Kernel Module Programming Guide is a free book; you may r转载 2008-05-22 16:18:00 · 983 阅读 · 0 评论 -
关于系统调用劫持
关于系统调用劫持如果一个木马要隐藏起来,不被系统管理员发现。截获系统调用似乎是必须的。大部分情况下,通过修改系统调用表来实现系统调用的劫持。下面是一个典型的截获系统调用的模块:模块一:#include #include #include #include #include #include #include #include #include MODULE_LICENSE("GPL");exter转载 2008-05-22 16:45:00 · 1177 阅读 · 2 评论 -
[小凤居-安全文献]隐藏进程的LKM后门
alz26这两天听QUACK说在翻译THC的LKM系列,呵呵,一时心动,也看了看,谁知道一看就停不下来了。。我开始看的是“操作系统开发者”的翻译稿/FOR LINUX/,谁知道越看越不是味道,在从硬盘里翻出THC的原文,一堆之下。。NND,他们把有危害性的全部省略了。不过,话说回来,对我入门还是很有用的。理解了一些基本概念后,就想找个现成的来玩玩。THC里面的提到的EXAMPLE我没有仔细看,直接转载 2008-05-27 15:59:00 · 1692 阅读 · 0 评论 -
_syscall*宏哪儿去了?
网上有很多文档介绍如何添加自定义的系统调用的,说的都特别详细,但是定义好自定义的系统调用后,察看新生成的内核符号表System.map中也出现了自己定义的系统调用,但是在编写用户程序进行测试时,发现问题了:_syscall0--_syscall6宏在linux/unistd.h中没有了。致使用户测试程序没法进行。 我查阅了内核源码和Changelogs,发现在Linux2.6.19.1转载 2008-05-30 11:23:00 · 1703 阅读 · 2 评论 -
对synapsys.c这个lkm的rootkit的代码分析
对synapsys.c这个lkm的rootkit的代码分析by 大鹰前言---------- 这个rootkit应该都不陌生,功能相对很强大,也是lkm实现的rootkit的典型,通过对他代码的实际分析可以看出利用linux的lkm我们可以做很多很多有趣的木马程序。 就象Berserker本人对这个rootkit的解释一样,它截获open,getuid,kill,fork,clone,转载 2008-05-28 20:32:00 · 953 阅读 · 0 评论 -
UNIX下设备驱动程序的基本结构
在UNIX系统里,对用户程序而言,设备驱动程序隐藏了设备的具体细节,对各种不同设备提供了一致的接口,一般来说是把设备映射为一个特殊的设备文件,用户程序可以象对其它文件一样对此设备文件进行操作。UNIX对硬件设备支持两个标准接口:块特别设备文件和字符特别设备文件,通过块(字符)特别设备文件存取的设备称为块(字符)设备或具有块(字符)设备接口。块设备接口仅支持面向块的I/O操作,所有I/O操作都通过在转载 2008-05-29 16:23:00 · 809 阅读 · 0 评论 -
Linux环境下的高级隐藏技术
隐藏技术在计算机系统安全中应用十分广泛,尤其是在网络攻击中,当攻击者成功侵入一个系统后,有效隐藏攻击者的文件、进程及其加载的模块变得尤为重要。本文将讨论Linux系统中文件、进程及模块的高级隐藏技术,这些技术有的已经被广泛应用到各种后门或安全检测程序之中,而有一些则刚刚起步,仍然处在讨论阶段,应用很少。 1.隐藏技术 1.1.Linux下的中断控制及系统调用 Intel x86系转载 2008-05-31 23:32:00 · 864 阅读 · 0 评论 -
Linux2.4.18内核下的系统调用劫持
注:本文提到的方法和技巧,如有兴趣请参考后面提到的两篇参考文章,虽然比较老了,但是对于本文内容的实现有很大的参考价值。因为篇幅关系,没有列出完整代码,但是核心代码已经全部给出。 Linux现在使用是越来越多了,因此Linux的安全问题现在也慢慢为更多人所关注。Rootkit是攻击者用来隐藏踪迹和保留root访问权限的工具集,在这些工具当中,基于LKM的rootkit尤其受到关注。这些rootkit转载 2008-10-18 17:08:00 · 966 阅读 · 0 评论 -
LKM Rootkits on Linux x86 v2.6
=-|================================================-{ www.enye-sec.org }-====|=-[ LKM Rootkits on Linux x86 v2.6 ]-========================================|=-|======================================转载 2008-10-03 16:40:00 · 1364 阅读 · 0 评论 -
Linux下Socket编程
网络的Socket数据传输是一种特殊的I/O,Socket也是一种文件描述符。Socket也具有一个类似于打开文件的函数调用Socket(),该函数返回一个整型的Socket描述符,随后的连接建立、数据传输等操作都是通过该Socket实现的。 什么是Socket Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用转载 2008-12-30 15:51:00 · 916 阅读 · 0 评论 -
揭示恶意的Linux内核模块是如何工作
如果在入侵事件调查中,传统的工具完全失效了,你该怎么办?当我在对付入侵者已经加载的内核模块时,就陷入了这种困境。由于从用户空间升级到了内核空间,LKM方式的入侵改变了以往使用的入侵响应的技术。一旦内核空间遭破坏,影响将覆盖到整个用户空间,这样入侵者无须改动系统程序就能控制他们的行为。而用户即使将可信的工具包上传到被入侵的主机,这些工具也不再可信。下面我将揭示恶意的内核模块如何工作,并且给出一些我开转载 2007-10-22 01:56:00 · 2061 阅读 · 0 评论 -
Linux 2.6内核的编译步骤及模块动态加载
本文是基于2.6的内核,也建议各位可以先看一下《Linux内核设计与实现(第二版)》作为一个基础知识的铺垫。当然,从实践角度来看,只要按着以下的步骤去做也应该可以实现成功编译内核及加载模块。 个人用的Linux版本为:Debian GNU/Linux,内核版本为:2.6.20-1-686. 第一步,下载Linux内核的源代码,即构建LDD3(Linux Device Drivers转载 2007-10-18 16:16:00 · 1388 阅读 · 0 评论 -
使用AutoMake轻松生成Makefile
许明彥 01-7-25 下午 02:32:55 摘要: 在 Unix 上转载 2007-08-23 20:50:00 · 487 阅读 · 0 评论 -
linux启动过程
姓名:Emi 职业:linux爱好者年龄:28 位置:北京这几天看了很多文档,算是对linux的启动过程有了比较细致的了解. 网上有很多文章谈到这方面的内容,但总觉得没有一篇完全的解析linux启动的细节,下面是我小弟在学习的过程中总结出来的一些东东.这个是完整的linux启动过程,不涉及内核,但是我觉得比较详细哦. (由于本人比较懒,这一段是从网上抄的) 机器加电启动后,转载 2007-08-16 16:43:00 · 667 阅读 · 1 评论 -
Linux 开机流程分析
开机流程分析开机不是只要按一下电源钮而关机只要关掉电源钮就可以了 吗?有何大学问?话是这样没错啦,但是由于 Linux 是一套多人多任务的操作系统,你难保你在关机时没有人在在线,如果你关机的时候碰巧一大群人在在线工作,那会让当时在在线工作的人马上断线的!那不是害死 人了!一些数据可以无价之宝哩!另外,与 DOS 环境不同的是, Linux 在执行的时候,虽然你在画面上只会看到黑压压的一片,完全没有转载 2007-08-16 16:44:00 · 396 阅读 · 0 评论 -
编写Makefile文件
转载 2007-08-18 00:41:00 · 437 阅读 · 0 评论 -
shell入门基础
代码:--------------------------------------------------------------------------------1.建立和运行shell程序什么是shell程序呢? 简单的说shell程序就是一个包含若干行shell或者linux命令的文件.象编写高级语言的程序一样,编写一个shell程序需要一个文本编辑器.如VI等.在文本编辑环境下,依据sh转载 2007-08-18 00:42:00 · 447 阅读 · 0 评论 -
linux 启动全接触
作者:秋水 本文选自:开放系统世界——赛迪网 2002年10月10日 关于Windows启动过程介绍的文章可谓多如牛毛,而对于Linux的介绍却是凤毛麟角。凡是曾经使用过Linux的用户可能都会注意到,当计算机启动时,屏幕上会出现很多信息。一般情况下,这些信息我们可以通过以下的命令看到: cat /var/log/dmesg | more这些信息究竟有什么含义?这个问题看起来似乎很容易回答,因为只转载 2007-08-18 15:56:00 · 394 阅读 · 0 评论 -
Linux进程的管道通信
#include #include #include int pid1, pid2; // 定义两个进程变量 main( ) {int fd[2]; char OutPipe[100], InPipe[100]; // 定义两个字符数组 pipe(fd); // 创建管道 while ((pid1 = fork( )) == -1); // 如果进程1创建不成功,则空循环 if (pid1 ==转载 2007-08-19 01:40:00 · 681 阅读 · 0 评论 -
Linux后门技术及实践(过时的)
后门简介 入侵者完全控制系统后,为方便下次进入而采用的一种技术。一般通过修改系统配置文件和安装第三方后门工具来实现。具有隐蔽性,能绕开系统日志,不易被系统管理员发现等特点。 常用后门技术 增加超级用户账号 破解/嗅探用户密码 放置SUID Shell rhosts + + 利用系统服务程序 TCP/UDP/ICMP Shell转载 2007-08-19 01:50:00 · 469 阅读 · 0 评论 -
Shell脚本调试技术
级别: 初级 曹 羽中 (mailto:caoyuz@cn.ibm.com?subject=Shell脚本调试技术), 软件工程师, IBM中国开发中心 2007 年 7 月 26 日 本文全面系统地介绍转载 2007-08-18 00:39:00 · 627 阅读 · 0 评论 -
概述Linux系统的驱动框架及驱动加载
本讲主要概述Linux设备驱动框架、驱动程序的配置文件及常用的加载驱动程序的方法;并且介绍Red Hat Linux安装程序是如何加载驱动的,通过了解这个过程, 我们可以自己将驱动程序放到引导盘中;安装完系统后,使用kudzu自动配置硬件程序。 Linux设备驱动概述 1. 内核和驱动模块 操作系统是通过各种驱动程序来驾驭硬件设备,它为用户屏蔽了各种各样的设备,驱动硬件是操作系统转载 2007-08-18 00:48:00 · 585 阅读 · 0 评论 -
Linux 上实现双向进程间通信管道
问题和现有方法 Linux提供了popen和pclose函数 ,用于创建和关闭管道与另外一个进程进行通信。其接口如下: FILE *popen(const char *command, const char *mode); int pclose(FILE *stream); 遗憾的是,popen创建的管道只能是单向的--mode只能是 "r" 或 "w" 而不能是某种组合--用户只转载 2007-08-19 01:41:00 · 515 阅读 · 0 评论 -
IPC和管道简介
作者: 黄浩文 1 Interprocess Communication (IPC)和管道Pipes 在UNIX的内核环境中,要解决的一个首要问题是:如何控制和处理不同进程之间的通信和数据交换。 本章中我们将通过研究一个简单的实例,看看在同一台机器的UNIX环境下多个进程是如何运行和被我们控制的 (使用fork()方法)。 能够实现进程间通信的方法有: · Pipes ·转载 2007-08-19 01:46:00 · 414 阅读 · 0 评论 -
Unix(Linux) C编程问题精粹
对于C语言,有人认为它已经落伍了.对于这个问题,仁者见仕,智者见智.的确,C++比C有更强大的诸多优势.但C++是建立在C之上的.这也是Herbert Schildt所著的>在全世界畅销不衰的原因.更何况,要深入学习LINUX就必需要有相当的C功底.(这也是我搜集整理本文的根由:-) 现结合个人在编程中的体会,为使新手少走弯路,为老手锦上添花,因此无论你是使用C或C++编程,也无论你是程序设计的初转载 2007-08-19 01:10:00 · 488 阅读 · 0 评论 -
Linux进程间通信:管道及有名管道
管道及有名管道 在本系列序中作者概述了 linux 进程间通信的几种主要手段。其中管道和有名管道是最早的进程间通信机制之一,管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信。 认清管道和有名管道的读写规则是在程序中应用它们的关键,本文在详细讨论了管道和有名管道的通信机制的基础上,用实例对其读写规则进行了程序验证转载 2007-08-19 01:39:00 · 814 阅读 · 0 评论 -
写得不错的linux学习笔记
linux目录架构/ 根目录/bin 常用的命令 binary file 的目錄/boot 存放系统启动时必须读取的档案,包括核心 (kernel) 在内 /boot/grub/menu.lst GRUB设置 /boot/vmlinuz 内核 /boot/initrd 核心解壓縮所需 RAM Disk/dev 系统周边设备 /et转载 2007-08-22 04:04:00 · 456 阅读 · 0 评论 -
如何编译一个内核 - Ubuntu方式
版本: 1.0作者: Falko Timme [at] falkotimme [dot] com>翻译: Ken Zhao 原文: http://www.howtoforge.com/kernel_compilation_ubuntu中文: http://blog.zhaoke.com/7.html最后更新 11/05/2006 中文最后更新 11/17/2006 每一个Linu转载 2007-08-23 15:44:00 · 512 阅读 · 0 评论 -
跟我一起写 Makefile
陈皓 概述 —— 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写ma转载 2007-08-23 20:49:00 · 540 阅读 · 0 评论 -
[转]fstab
主要翻译自http://www.tuxfiles.org/linuxhelp/fstab.html,根据自己的理解做了修改和补充可能玩Linux的朋友都知道fstab这个文件,如果要用好linux,熟悉linux的一些核心配置文件是必要的,而fstab则是其中之一。这个文件描述系统中各种文件系统的信息,应用程序读取这个文件,然后根据其内容进行自动挂载的工作。因此,我们需要理解其中的内容,了解它如何转载 2008-11-14 19:31:00 · 892 阅读 · 0 评论