Home Map Index Search News Archives Links About LF
[Top Bar]
[Bottom
Bar]
[Photo of the
Author]
Michael Jastremski
�@��²���G Michael Jastremski �o�|�~�H�ӡA �@�����b�M�� Unix�A �L�������q�`�i�H�b http://westphila.net/mike ���A �L�P�� Andrew ���^���U�C

�P�@���pô


���e�ؿ��G
��Ū
�t�Φw������@�B�J

�� Linux �w�ˮM��j�ƨt�Φw��

[Illustration]

���e�K�n: ���夶�Шt�Φw�����@�����A ���t�κ޲z���ɥH�����J�I�̡C �w�藍�P�� Linux �t�ΡA �Q�פ@�ǧﵽ�覡�C




��Ū

���֤H�}�l�s�x�ͽפJ�I�����D�������D�A �� Linux �P FreeBSD �h�������D�n��������H�A �]�A�� imapd �P BIND �{���̪� buffer overflow ���D�C �C�ѡA �U���U�˪��u�t�κ|�}�v�A ���|�b BUGTRAQ �l���׾¤��ť��A ���@�l���׾¤w���N�� 20,000 ��q�\�̡C ( �Y�O�z�u�Q�q�\�@���t�Φw���������l���׾¡A ����o�Ӥ��e���L )�C

���]�W�z�� 19,305 ��q�\�̷����A ���ܤ֤@�쥴��g�� for() �j��A �t�X���}���t�κ|�}�����{���A �ǥH�ֳt���o�����W�D���������v... �ƹ�W�o�˪����]�ä����L�C

�p���@�ӡA �z���q�����߷|�����U�@�ӾD���������ؼСA ��ɭԡA �z�i��N���⤣�ΤF�C

�γ\���ǡu�M�a�v�w�g���z�H���A �w�ˤκ��@�@���w�����q���A ���p�u�ӪŬ�ǡv��a�����A �ƹ�W�S�������աC �֦��@�M�����Ӱ������t�κ޲z���I�A �~��O�ٱz�K��Ӧۥ��y�������¯١A �ӥ���Q�ת��K�O�A �ڦb�W�e Red Hat Linux �����t�ήɡA �@��|�Ĩ����w�����I�C ���M�夤���ѤF�O�٨t�Φw�������ޡA ���������O�@�����㪺�Ѧһ����C

�U�C���B�J�A �ηN�b�ϱz���t�ΡA ���n���������{���w���|�}���}�᪺���`�̡C �ЯS�O�`�N�G �p�G�z���T�w�M���ۤv�b������A ����N�O�ʤ�C ���ǨB�J�O���]�A �z�w�g��Ƶ{�פ��W���������ѡC �好�t�~�٪��W�@�ǫ�ij���Ѧ�Ū���C

�t�Φw������@�B�J

1. �N�t�Τ��Ҧ��S���n�������A�ȥ��������C �i�H�s��z�q�����覡�V�֡A ���ܤJ�I�̴c�����~�|�V�֡C �� /etc/inetd.conf �ɮפ��A �Ҧ����ݭn�����س��[�������A �p�G�t�Ψä��ݭn telnet�A ���N�N�������A �Ѧp ftpd�B rshd�B rexecd�B gopher�B chargen�B echo�B pop3d ���A �]�O�P�˪��B�z��h�C �粒 inetd.conf �ɮ׫�A �O�ѤF�n���� 'killall -HUP inetd' �ʧ@�C �t�~�A �]�O���� /etc/rc.d/init.d �ؿ��̪��F��A ���Ǻ����A�� ( �� BIND�B �L�������A�{�� ) �O�W�۰��檺�{���A �z�L�ؿ��̪��R�O�Z�ӱҰʡC

2. �w�� SSH�C SSH �O�@�ӥΨӨ��N 'r' �t�C���O���{���A �쥻���� Berkeley �������{���w�g���¤F�C �U�C�O�K�� http://www.cs.hut.fi/ssh ��������ơG

Ssh (Secure Shell) �O�@�ӥΨӵn�J�����D���B
�b���ݥD���W������O�B �άO�b��x�D�����h���ɮת��{���C
�����ѤF�j�j���{�ҥ\��A �ýT�O����b�����W�i��w������Ƴq�T�C

���B�~�ٯ���B�z�@�ǨƱ��A �i��|�O�����p�㤧����ҷP���쪺�C �Х� http://ftp.rge.com/pub/ssh �U�� SSH �{���C

3. �ϥ� vipw(1) ��Ҧ����a�n�J���b��������_�ӡC �ȱo�`�N���O�A ���ǨS�����w login shell ���b���A Red Hat Linux �|�w�]�N���̫��w�� /bin/sh�A �o�ر��p�i�ण�O�A�Ҵ��檺�C �P�ɭn�T�w�A �z���ϥΪ̱b�����S����K�X�浹�ŤU�ӡA �U�C�O�@�ӥ��`���K�X�ɮת��������e�G

  daemon:*:2:2:daemon:/sbin:/bin/sync
  adm:*:3:4:adm:/var/adm:/bin/sync
  lp:*:4:7:lp:/var/spool/lpd:/bin/sync
  sync:*:5:0:sync:/sbin:/bin/sync
  shutdown:*:6:0:shutdown:/bin:/sync
  halt:*:7:0:halt:/sbin:/bin:/sync
  mail:*:8:12:mail:/var/spool/mail:/bin/sync
  news:*:9:13:news:/var/spool/news:/bin/sync
  uucp:*:10:14:uucp:/var/spool/uucp:/bin/sync
  operator:*:11:0:operator:/root:/bin/sync
  games:*:12:100:games:/usr/games:/bin/sync
  gopher:*:13:30:gopher:/usr/lib/gopher-data:/bin/sync
  ftp:*:14:50:FTP User:/home/ftp:/bin/sync
  nobody:*:99:99:Nobody:/:/bin/sync                    

4. �����Ҧ� root �Ҿ֦����{���� 's' �줸�v���A �p�G���ڥ����ݭn�o�˪��v���C �o�Ӱʧ@�i�H�� 'chmod a-s' ���O�����A �᭱�����ѼơA �K�O�z�n�諸�ɦW�C

�W�z�Ҵ����{���]�A�H�U�U���A �������󦹡G

  1. �z�q�Ӥ��|�h�ϥΪ��{��
  2. �z���Ʊ� root ���~���ϥΪ̷|�h���檺�{��
  3. ���ӷ|�ΡA ���H su(1) �ܦ� root �A�h����A �]�L�ҿת��{��

�ڧ�ۤv�|�����v�����{���C�b�U���A �æb�e����F�P�� (*)�C �O���A �ѩ�z���t�Τ��M�ݭn�@�� suid root ���{���A �~�ॿ�`�a����A �]���n�S�O�a�p�ߡC

�t�@�ؤ覡�A �z�i�H�إߤ@�ӥs�� 'suidexec' ���S���s�զW�١A �M��N�i�H�઺�ϥΪ̱b���]�b�̭��A �ϥ� chgrp(1) ���O�N�Ҧ� suid ���{���令�ݩ� suidexec ���@�s�աA �ñN��L�ϥΪ̥i�H���檺�v�������C

     
# find / -user root -perm "-u+s"    
*/bin/ping              
*/bin/mount              -- ���ӥu�� root �~�i�H���W�ɮרt��
*/bin/umount             -- �P�W
/bin/su                  -- �O�ç復��!
/bin/login
/sbin/pwdb_chkpwd
*/sbin/cardctl           -- PCMCIA �d������u��{��
*/usr/bin/rcp            -- ��� ssh
*/usr/bin/rlogin         -- �P�W
*/usr/bin/rsh            --  "
*/usr/bin/at             -- ��� cron�A �Ψ�̳�����
*/usr/bin/lpq            -- ��� LPRNG
*/usr/bin/lpr            -- "
*/usr/bin/lprm           -- "
*/usr/bin/mh/inc
*/usr/bin/mh/msgchk
/usr/bin/passwd          -- �O�ç復��!
*/usr/bin/suidperl       -- �C�ӷs���� suidperl �n������
                            buffer overflow �����D
*/usr/bin/sperl5.003     -- �u�����n�ɤ~�Υ�
/usr/bin/procmail        -- 
*/usr/bin/chfn
*/usr/bin/chsh
*/usr/bin/newgrp
*/usr/bin/crontab               
*/usr/X11R6/bin/dga      -- X11 �̤]���\�h buffer overflow �����D
*/usr/X11R6/bin/xterm    -- "
*/usr/X11R6/bin/XF86_SVGA   -- "    
*/usr/sbin/usernetctl           
/usr/sbin/sendmail
*/usr/sbin/traceroute    -- �z���ӥi�H�Ԩ����ӥ��@�U root �K�X�a

5.�@�� sendmail�C �q ftp://ftp.sendmail.org/pub/sendmail �U���̷s����l�X�ɮסA �Ѷ}��\Ū�仡�����A �p�G�z�٦��I�h�l���ɶ��A �i�H�w�� smrsh ( ���H�b sendmail �� )�A �\�h�H�����ߪ� sendmail �w�����D�A �p�H�H���Y�ǦM�`�w�����{���A �o�ӵ{���j���Ҽ{��F�C �̫�s�� sendmail.cf �ɮסA �� 'PrivacyOptions' �ﶵ�]�w�� 'goaway'�G

        O PrivacyOptions=goaway

�p�G�z�����⦬�����ں����W���q�l�l��A �d�U���n�N sendmail �H���H���A (sendmail -bd) �Ӱ���! �b�W�z�����p�U�A �бN /etc/rc.d/init.d/sendmail.init �����A �ð��� 'killall -TERM sendmail' �R�O�C ���L�A �z�٬O�i�H�H�H��~�����C

6.�p�G�z���ϥ� BIND�A �]�n�O�o�@�šC �̷s���� BIND �i�H�b http://www.isc.org ���A ���M�A �бN���̥����������C

7.���s�sĶ�֤ߵ{���C �p�G�w�]���֤ߵ{���Ӥj�A �ڳq�`�N�|���s�sĶ���C ���ܡG �бN���������𪺿ﶵ�������}�A �Y�ϱz���q���ä��O������C

       
        CONFIG_FIREWALL=y
        CONFIG_NET_ALIAS=y
        CONFIG_INET=y
        # CONFIG_IP_FORWARD is not set
        # CONFIG_IP_MULTICAST is not set
        CONFIG_SYN_COOKIES=y
        CONFIG_RST_COOKIES=y
        CONFIG_IP_FIREWALL=y
        CONFIG_IP_FIREWALL_VERBOSE=y
        # CONFIG_IP_MASQUERADE is not set
        # CONFIG_IP_TRANSPARENT_PROXY is not set
        CONFIG_IP_ALWAYS_DEFRAG=y
        CONFIG_IP_ACCT=y
        # CONFIG_IP_ROUTER is not set
        # CONFIG_NET_IPIP is not set
        CONFIG_IP_ALIAS=m

8.�i��{���׸� �Ҧ��w�����n����D�A ���i�H�b RedHat ���u�ץ������v�W���A ( �Ьd�\ http://www.redhat.com/support/docs/errata.html�A ��X�A�X�z�������׸ɵ{���X )�A RedHat �b���@��s�o�Ǻ����W�A �T�갵�o�۷������C �P�ɡA �o�Ǻ����٥]�A�@�� RPM �ɮת��s���A �z���ӥαo�ۡA �Ш̷ӻ������ܶi��w�ˡC

9.�]�w tcp_wrappers�G tcp_wrappers �i�H�ΨӺ޲z�����W�A ���ǹq���i�H�P�z���q���i��u���q�v�C �o�@�M�{���A �O�Ѥ@��t�Φw������ Wieste Venema �Ҽg���A ���|�޲z���Ǹg�� inetd ( �λP inetd �{���w�۳s�� ) �ұҰʪ��{���A ���R���̪��]�w�ɮסA �H�M�w�O�_�ڵ��ΦP�N�Y�@�Ӻ����s�u�n�D�C �|�Ҩӻ��A ���F���\�z�q�a�̯���z�L ISP �i�� telnet �� ftp�A �P�ɶ��S�n�ڵ��Ҧ���L���s�u�A �i�H�b /etc/hosts.allow �ɮ׸̼g�J�G

        in.ftpd : .dialup.your-isp.com : allow
        all : all : deny 

�� SSH�B sendmail �Ψ�L�{���A ���i�H�����P tcp_wrappers �ۤ��䴩�C �о\Ū tcpd(1) ���������A �H���o�i�@�B����T�C

Solar Designer �Ҵ��Ѫ� Secure Linux patches�G
http://www.false.com/security/li nux/

replay.com ���Ѫ� RedHat crypto pages�G
http://www.replay.com/redhat/

Breaking Into it �Ҵ��Ѫ� Improving the Security of Your Site�G
http://www.alw.nih.gov/Security/Docs/admin-guide-to-cracking.101.html

Slashdot ���ѳ̷s�Ӥήɪ������G
http://www.slashdot.org

�Q�n���D�̷s���n���s���p�A �аѦ� FreshMeat regularly�G
http://www.freshmeat.net

Smashing the stac�G
http://reality.sgi.com/nate/machines/security/P49-14-Aleph-One


����� Penelope Marr ��½Ķ

�D������ Miguel Angel Sepulveda ���@
© Michael Jastremski
LinuxFocus 1998