Linuxϵͳ¿ÉжÔØÄÚºËÄ£¿éÍêÈ«Ö¸ÄÏ_ÖÐ
µÚ¶þ²¿·Ö ½¥Èë¼Ñ¾³
2.1 ÈçºÎ½Ø»ñϵͳµ÷ÓÃ
ÏÖÔÚÎÒÃÇ¿ªÊ¼ÈëÇÖLKM£¬ÔÚÕý³£Çé¿öÏÂLKMsÊÇÓÃÀ´À©Õ¹Äں˵Ä(ÌرðÊÇÄÇЩӲ¼þÇý¶¯)¡£È»¶øÎÒÃǵđHacks’×öһЩ²»Ò»ÑùµÄÊÂÇé¡£ËûÃÇ»á½Ø»ñϵͳµ÷Óò¢ÇÒ¸ü¸ÄËûÃÇ£¬ÎªÁ˸ıäϵͳijЩÃüÁîµÄÏìÓ¦·½Ê½¡£
ÏÂÃæµÄÕâ¸öÄ£¿é¿ÉÒÔʹµÃÈκÎÓû§¶¼²»ÄÜ´´½¨Ä¿Â¼¡£ÕâÖ»²»¹ýÊÇÎÒÃÇËæºó·½·¨µÄÒ»¸öССÑÝʾ¡£
window.google_render_ad();
#define MODULE
#define __KERNEL__
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
extern void* sys_call_table[];
/*sys_call_talbe ±»ÒýÈ룬ËùÒÔÎÒÃÇ¿ÉÒÔ´æÈ¡Ëû*/
int (*orig_mkdir)(const char *path);
/*Ôʼϵͳµ÷ÓÃ*/
int hacked_mkdir(const char *path)
{
return 0;
/*ÆäËûÒ»ÇÐÕý³££¬³ýÁËн¨²Ù×÷£¬¸Ã²Ù×÷ʲôҲ²»×ö*/
}
int init_module(void)
/*³õʼ»¯Ä£¿é*/
{
orig_mkdir=sys_call_table[SYS_mkdir];
sys_call_table[SYS_mkdir]=hacked_mkdir;
return 0;
}
void cleanup_module(void)
/*жÔØÄ£¿é*/
{
sys_call_table[SYS_mkdir]=orig_mkdir;
/*»Ö¸´mkdirϵͳµ÷Óõ½ÔÀ´µÄÄĸö*/
}
±à Òë²¢Æô¶¯Õâ¸öÄ£¿é(¼û1.1)¡£È»ºó³¢ÊÔн¨Ò»¸öĿ¼£¬Äã»á·¢ÏÖ²»Äܳɹ¦¡£ÓÉÓÚ·µ»ØÖµÊÇ0(´ú±íÒ»ÇÐÕý³£)ÎÒÃǵò»µ½Èκγö´íÐÅÏ¢¡£ÔÚÒÆÇøÄ£¿éÖ®ºó£¬ÎÒÃÇ ÓÖ¿ÉÒÔн¨Ä¿Â¼ÁË¡£ÕýÈçÄãËù¿´µ½µÄ£¬ÎÒÃÇÖ»ÐèÒª¸Ä±äsys_call_table(¼û1.2)ÖÐÏà¶ÔÓ¦µÄÈë¿Ú¾Í¿ÉÒԽػñµ½ÏµÍ³µ÷ÓÃÁË¡£
½Ø»ñϵͳµ÷ÓõÄͨ³£²½ÖèÈçÏÂ:
ÕÒµ½ÄãÐèÒªµÄϵͳµ÷ÓÃÔÚsys_call_table[]ÖеÄÈë¿Ú(¿´Ò»ÑÛinclude/sys/syscall.h)
±£´æsys_call_table[x]µÄ¾ÉÈë¿ÚÖ¸Õë¡£(ÔÚÕâÀïx´ú±íÄãËùÏëÒª½Ø»ñµÄϵͳµ÷ÓõÄË÷Òý)
½«Äã×Ô¼º¶¨ÒåµÄеĺ¯ÊýÖ¸Õë´æÈësys_call_table[x]
Äã»áÒâʶµ½±£´æ¾ÉµÄϵͳµ÷ÓÃÖ¸ÕëÊÇÊ®·ÖÓÐÓõģ¬ÒòΪÔÚÄãµÄе÷ÓÃÖÐÄã»áÐèÒªËûÀ´Ä£ÄâÔʼµ÷Óᣵ±ÄãÔÚдһ¸ö'Hack-LKM'ʱÄãËùÃæ¶ÔµÄµÚÒ»¸öÎÊÌâÊÇ:
ÎÒµ½µ×¸Ã½Ø»ñÄĸöϵͳµ÷ÓÃ?
2.2һЩÓÐȤµÄϵͳµ÷ÓÃ
Äã²¢²»ÊÇÒ»¸ö¹ÜÀíÄں˵ÄÉϵۣ¬Òò´ËÄã²»ÖªµÀÿһ¸öÓû§µÄÓ¦ÓóÌÐò»òÕßÃüÁîµ½µ×ʹÓÃÁËÄÇЩϵͳµ÷Óá£Òò´ËÎÒ»á¸øÄãһЩÌáʾÀ´°ïÖúÄãÕÒµ½»ñµÃ¿ØÖƵÄϵͳµ÷Óá£
¶ÁÔ´´úÂë¡£ÔÚÒ»¸öÏólinuxÕâÑùµÄϵͳÖУ¬Äã¿ÉÒÔÕÒµ½ÈκÎÒ»¸öÓû§(»òÕß¹ÜÀíÔ±)ËùÓõijÌÐòµÄÔ´´úÂë¡£Ò»µ©Äã·¢ÏÖÁËij¸ö»ù±¾µÄº¯Êý£¬Ïñdup,open,write.....תÏòb
ÏÂÃæ¿´¿´include/sy
Ïà¹ØÎĵµ£º
°²×°mysql
sudo apt-get install mysql-servel-5.0 mysql-client-5.0
ÏÂÔØ°²×°¹ý³ÌÖУ¬»áÌáʾÊäÈërootÃÜÂë
°²×°CÓïÑÔ±à³Ì½Ó¿Ú£º
sudo apt-get install libmysqlclient15-dev
¸ü¶àapi ²é¿´£ºhttp://dev.mysql.com/doc/refman/5.0/en/c.html
Ïà¹ØmysqlÍ·ÎļþºÍ¿âÎļþ°²×°ÔÚ/usr/include/mysql/ºÍ/usr/lib/mysqlÄ¿ ......
×¼±¸¹¤×÷:
¡¡¡¡Óõ½µÄperl À©Õ¹×é¼þ(modules)ÔÚÉÏƪÌù³ö.( win32::odbc Ä£¿é
)ÏÂÔØ×é¼þºó°´ÕÕReadmeÎļþ°²×°µ¹ÏìӦĿ¼.ÅäÖúÃÏàÓ¦µÄodbcÊý¾ÝÔ´.
¡¡¡¡
¡¡¡¡³ÌÐòʵÏÖ:
¡¡¡¡Ê¹ÓÃ
¡¡¡¡use
Win32::ODBC;
¡¡¡¡
¡¡¡¡Óï¾ä°üº¬Ó¦Ê¹ÓõÄÄ£¿éÊÇwin32::odbc,д³öÊý¾Ý¿â
Á¬½Ó×Ö·û´®
¡¡¡¡
¡¡¡¡$DSN = "DSN =
My DSN ......
Trace32-ICDÊÇÄ¿Ç°¹¦ÄÜ×îÇ¿´óµÄ·ÂÕæÆ÷£¬Ö§³Ö¸÷ÖÖCPU£¬°üÀ¨ARM/X86µÈ¡£Trace32Êǵ¹úlauterbach¹«Ë¾µÄ²úÆ·£¬¹¦ÄÜÇ¿´ó£¬Ö§³Ö¸÷ÖÖ²Ù×÷ϵͳµ÷ÊÔ£¬Èçlinux/vxworks/winceµÈ£¬²»¹ý¼Û¸ñÒ²±È½Ï¸ß£¬Òª3-5ÍòRMB£¬ÏÖÔÚÒ²ÓÐЩ·ÂÖƵÄTrace£¨ÈçTrace32-ICP£©£¬¼Û¸ñ±È½Ï±ãÒË£¬´ó¸Å1Íò¶àRMB¡£Trace32ÓÉÓÚÆ书ÄÜÇ¿´ó£¬ÌرðÊʺϴóÐÍÇ¶È ......
linux strace ½ø³Ì¸ú×Ù
µ÷ÓÃ:
strace [ -dffhiqrtttTvxx ] [ -acolumn ] [ -eexpr ] ...
[ -ofile ] [ -ppid ] ... [ -sstrsize ] [ -uusername ] [ command [ arg ... ] ]
strace -c [ -eexpr ] ... [ -Ooverhead ] [ -Ssortby ] [ command [ arg ... ] ]
¹¦ ......
linuxµÄpsÃüÁîºÍtop¶¼ÊÇÓÃÀ´¼àÊÓϵͳ½ø³ÌºÍ×ÊԴʹÓÃÇé¿öµÄÓÐÓÃÃüÁî, psÃüÁî¸üΪ³£ÓÃ, ËùÒÔÕÆÎÕpsÃüÁîÊǺÜÓбØÒªµÄ
psÃüÁîÈç¹ûÓÐÈκÎÒÉÎÊ,ÇëÔÚÖÕ¶ËÏÂÊäÈë :# man ps
Ãû³Æ£ºps
ʹÓÃȨÏÞ£ºËùÓÐʹÓÃÕß
ʹÓ÷½Ê½£ºps [options] [--help]
˵Ã÷£ºÏÔʾ˲¼äÐÐ³Ì (process) µÄ¶¯Ì¬
²ÎÊý£º
ps µÄ²ÎÊý·Ç³£¶à, Ôڴ˽öÁгö¼¸¸ö³£Óà ......