ÔõôÔÚLinuxÖÐÌí¼ÓеÄϵͳµ÷ÓÃ
ϵͳµ÷ÓÃÊÇÓ¦ÓóÌʽºÍ²Ù×÷ϵͳÄÚºËÖ®¼äµÄ¹¦Äܽӿڡ£ÆäÖ÷ҪĿµÄÊÇʹµÃÓû§
ÄÜʹÓòÙ×÷ϵͳÌṩµÄÓйØÉ豸¹ÜÀí¡¢ÊäÈë/ÊäÈëϵͳ¡¢ÎļþϵͳºÍ½ø³Ì¿ØÖÆ¡¢
ͨÐż°´æ´¢¹ÜÀíµÈ·½ÃæµÄ¹¦ÄÜ£¬¶ø²»±ØÁ˽âϵͳ³ÌʽµÄÄÚ²¿½á¹¹ºÍÓйØÓ²¼þϸ
½Ú£¬´Ó¶øÆðµ½¼õÇáÓû§¸ºµ£ºÍ±£»¤ÏµÍ³¼°Ìá¸ß×ÊÔ´ÀûÓÃÂʵÄ×÷Óá£
¡¡¡¡Linux²Ù×÷ϵͳ×÷ΪÃâ·ÑÈí¼þµÄ´ú±í£¬ËûÓÅÁ¼µÄÐÔÄÜʹµÃËûµÄÓ¦ÓÃÈÕÒæ¹ã·º£¬
²»½öµÃµ½×¨ÒµÈËÊ¿µÄ¿Ï¶¨£¬¶øÇÒÉÌÒµ»¯µÄÓ¦ÓÃÒ²ÊÇÈç»ðÈçݱ¡£ÔÚLinuxÖУ¬´ó²¿·Ö
µÄϵͳµ÷Óðüº¬ÔÚLinuxµÄlibc¿âÖУ¬Í¨¹ý±ê×¼µÄCº¯Êýµ÷Ó÷½·¨Äܵ÷ÓÃÕâЩϵͳ
µ÷Óá£ÄÇô£¬¶ÔLinuxµÄ·¢ÉÕÓÑÀ´Ëµ£¬ÔõôÔÚLinuxÖÐÔö¼ÓеÄϵͳµ÷ÓÃÄØ£¿
1 Linuxϵͳµ÷ÓûúÖÆ
¡¡¡¡ÔÚLinuxϵͳÖУ¬ÏµÍ³µ÷ÓÃÊÇ×÷ΪһÖÖÒì³£ÀàÐÍʵÏֵġ£Ëû½«Ö´ÐÐÏàÓ¦µÄ»úÆ÷
´úÂëÖ¸ÁîÀ´²úÉúÒì³£Ðźš£²úÉúÖжϻòÒì³£µÄÖØÒªÐ§¹ûÊÇϵͳ×Ô¶¯½«Óû§Ì¬×ª»»Îª
ºËÐÄ̬À´¶ÔËû½øÐд¦Àí¡£Õâ¾ÍÊÇ˵£¬Ö´ÐÐϵͳµ÷ÓÃÒì³£Ö¸Áîʱ£¬×Ô¶¯µØ½«ÏµÍ³×ª»»
ΪºËÐÄ̬£¬²¢°²ÅÅÒì³£´¦Àí³ÌʽµÄÖ´ÐС£
¡¡¡¡LinuxÓÃÀ´ÊµÏÖϵͳµ÷ÓÃÒì³£µÄʵ¼ÊÖ¸ÁîÊÇ£º
¡¡¡¡Int  $0x80
¡¡¡¡ÕâÒ»Ö¸ÁîʹÓÃÖжÏ/Òì³£ÏòÁ¿ºÅ128£¨¼´16½øÖƵÄ80£©½«¿ØÖÆÈ¨×ªÒƸøÄںˡ£Îª
´ïµ½ÔÚʹÓÃϵͳµ÷ÓÃʱ²»±ØÓûúÆ÷Ö¸Áî±à³Ì£¬ÔÚ±ê×¼µÄCÓïÑÔ¿âÖÐΪÿһϵͳµ÷ÓÃ
ÌṩÁËÒ»¶Î¶ÌµÄ×Ó³Ìʽ£¬Íê³É»úÆ÷´úÂëµÄ±à³Ì¹¤×÷¡£ÊÂʵÉÏ£¬»úÆ÷´úÂë¶Î·Ç³£¼ò
¶Ì¡£ËûËùÒª×öµÄ¹¤×÷Ö»Êǽ«Ë͸øÏµÍ³µ÷ÓõIJÎÊý¼ÓÔØµ½CPU¼Ä´æÆ÷ÖУ¬½Ó×ÅÖ´ÐÐ
int  $0x80Ö¸ÁȻºóÔËÐÐϵͳµ÷Óã¬ÏµÍ³µ÷Óõķµ»ØÖµ½«ËÍÈëCPUµÄÒ»¸ö¼Ä´æÆ÷
ÖУ¬±ê×¼µÄ¿â×Ó³ÌʽȡµÃÕâÒ»·µ»ØÖµ£¬²¢½«ËûËÍ»ØÓû§³Ìʽ¡£
¡¡¡¡ÎªÊ¹ÏµÍ³µ÷ÓõÄÖ´ÐгÉΪһÏî¼òµ¥µÄÈÎÎñ£¬LinuxÌṩÁËÒ»×éÔ¤´¦ÀíºêÖ¸Áî¡£
ËûÃÇÄÜÓÃÔÚ³ÌʽÖС£ÕâЩºêÖ¸Áîȡһ¶¨µÄ²ÎÊý£¬È»ºóÀ©Õ¹Îªµ÷ÓÃÖ¸¶¨µÄϵͳµ÷ÓÃ
µÄº¯Êý¡£
¡¡¡¡ÕâЩºêÖ¸Áî¾ßÓÐÀàËÆÏÂÃæµÄÃû³Æ¸ñʽ£º
¡¡¡¡_syscallN£¨parameters£©
¡¡¡¡ÆäÖÐNÊÇϵͳµ÷ÓÃËùÐèµÄ²ÎÊýÊýÄ¿£¬¶øparametersÔòÓÃÒ»×é²ÎÊý´úÌæ¡£ÕâЩ²Î
ÊýʹºêÖ¸ÁîÍê³ÉÊʺÏÓÚÌØ¶¨µÄϵͳµ÷ÓõÄÀ©Õ¹¡£ÀýÈ磬ΪÁ˽¨Á¢µ÷ÓÃsetuid£¨£©Ïµ
ͳµ÷Óõĺ¯Êý£¬Ó¦¸ÃʹÓãº
¡¡¡¡_syscall1£¨ int£¬ setuid£¬ uid_t£¬ uid £©
¡¡¡¡syscallN£¨ £©ºêÖ¸ÁîµÄµÚ1¸ö²ÎÊýint˵Ã÷²úÉúµÄº¯ÊýµÄ·µ»ØÖµµÄÀàÐÍÊÇÕû
ÐÍ£¬µÚ2¸ö²ÎÊýsetuid˵Ã÷²úÉúµÄº¯ÊýµÄÃû³Æ¡£ºóÃæÊÇϵͳµ÷ÓÃËùÐèÒªµÄÿ¸ö²Î
Êý¡£ÕâÒ»ºêÖ¸ÁîºóÃæ¸üÓÐÁ½¸ö²ÎÊýuid_tºÍuid·Ö±ðÓÃ
Ïà¹ØÎĵµ£º
Çл»µ½rootÓû§ÏÂ,
service iptables status ÓÃÓڲ鿴ÊÇ·ñÓпªÆô·À·½Ç½.
service iptables stop ÓÃÓڹرշÀ»ðǽ.
service iptables start ÓÃÓÚ´ò¿ª·À»ðǽ.
·À»ðǽµÄ¿ªÆôÓÐʱ»áÏÞÖÆÍⲿ·ÃÎÊ·þÎñÆ÷ÉϵĶ˿Úʧ°Ü. ......
RHEL5´î½¨DNS·þÎñÆ÷ʵÏÖÃû³Æ½âÎö Èý
£¨¶þ£©named.confÎļþ˵Ã÷£º
´ËÎļþÐèÓû§×Ô¼º´´½¨£¬¿É´Ó/usr/share/doc/bind-9.3.3/sample/etcÖи´ÖƵ½/var/named/chroot/etc/Ŀ¼ÏÂ
// Sample named.conf BIND DNS server 'named' configuration file
// for the Red Hat BIND distribution.
// See the BIND ......
˵Ã÷
±Ê¼ÇÊÊÓÃÓÚLinuxµÄ2.6.10ÒÔºóµÄÄںˡ£
±Ê¼ÇÒÔLinux
Device
Driver3ÌṩµÄscull³ÌÐò(scullĿ¼ÖеÄmain.cºÍscull.h)Ϊ¼Ç¼Ö÷Ïߣ¬²¢ÒÔ¸ÃÇý¶¯³ÌÐòÖеĸ÷ÖÖϵͳµ÷Óúͺ¯Êýµ÷ÓÃÁ÷³ÌΪ¼Ç
¼˳Ðò¡£±ÈÈ磬module_init( )ºÍmodule_exit(
)ΪÏà¶ÔÓ¦µÄÒ»¶Ôϵͳµ÷Óã¬Ò»°ãÊé¼®Öж¼»á·ÅÔÚÒ»ÆðÌÖÂÛ£¬µ«ÊDZ¾±Ê¼ÇÈ´²»»áÕâÑù£¬¶øÊ ......