Linux操作系统安全配置安全中心-信息安全Coolcyang2005.3内容提要•Who•Why•What•How•总结Who•本培训针对的人群–维护主机的管理员–想加强自身team/部门主机安全的管理者–网络安全技术有兴趣的同事Why管理技术Why(技术层面)安全的脆弱点Why(技术层面)Why(技术层面)常见的黑客手段Why(技术层面)Why(技术层面)•问题一•10分钟用您的智慧挑战黑客–您听说或知晓的黑客攻击手段?–黑客拿到服务器权限会有哪些危害?–针对这些攻击您是否有好的解决方案?按攻击方法分类远程获得权限攻击本地超越权限攻击拒绝服务攻击远程获得最高权限远程获得普通访问权DOSDDOS程序设计缺陷本地权限非正常提升入侵行为分类Why(技术层面)攻击手法和入侵者技术趋势高低19801985199019952000密码猜测可自动复制的代码密码破解利用已知的漏洞破坏审计系统后门回话劫持擦除痕迹嗅探包欺骗GUI远程控制自动探测扫描拒绝服务攻击(注入,垮站脚本)工具攻击者入侵者技术攻击手法半开放隐蔽扫描控制台入侵检测网络管理DDOS攻击Why(技术层面)踩点攻击扫描清除日志隐藏&后门扩大战果发掘阶段拓展阶段映射阶段勘查阶段Why(技术层面)踩点攻击扫描清除日志隐藏&后门扩大战果通过nmap.SSS等扫描器扫描漏洞。利用所取得的权限清除日志,种植木马。通过某个服务的漏洞,溢出取得权限。通过telnet80端口等形式查询信息,定位目标Why(技术层面)Why(技术层面)•一次渗透攻击的演示Why(技术层面)踩点Why(技术层面)扫描Why(技术层面)攻击清除日志[root@victimlog]#grep–vthe.hack.ip.fromsecuresecure.tmp[root@victimlog]#mvsecure.tmpsecure[root@victimlog]#chmod700secureWhy(技术层面)隐藏&后门一个简单的rootkit:PS1、mvpspsbak2、catps#!/bin/shpsbak$1|grep-vsniff|grep-vgrep|grep-vpsbak|gawk'{gsub(/sh\/bin\//,,$0);print}‘[ctrl+d]3、chmod755psWhy(技术层面)扩大战果•使用john破解软件•使用Sniff类监听器捕获敏感数据•安装Dos软件攻击其他主机•利用此服务器的信任关系进行内网攻击•释放蠕虫和病毒Why(技术层面)最小安装、关闭非要服务访问控制和审计保持最新的安全更新屏蔽敏感信息Why(技术层面)踩点隐藏&后门攻击扫描扩大战果清除日志Why(管理层面)•风险不是独立存在的•攻击有蔓延性•单一的安全手段不能保护系统的安全木桶理论木桶理论What(技术层面)•安全补丁更新•敏感信息保护•最小化安全原则•访问控制•防DOS配置•完整性检验•日志维护和保护What(技术层面)•安全补丁更新–Kernel更新•升级避免Kernel内核漏洞–Slackware自带包更新•–Slackware更新补丁的命令What(技术层面)•安全补丁更新•敏感信息保护•最小化安全原则•访问控制•防DOS配置•完整性检验•日志维护和保护What(技术层面)•敏感信息保护–屏蔽banner信息&版本信息–删除默认帐户–删除默认目录What(技术层面)•安全补丁更新•敏感信息保护•最小化安全原则•访问控制•防DOS配置•完整性检验•日志维护和保护What(技术层面)•最小化安全原则–关闭不必要的服务&包•包最小化–安全母盘–安装系统时使用专家模式自行定制–Pkgtools进行包管理–不安装X相关的软件–不安装GAME软件–不安装不使用的开发工具•服务最小化–安装时采取白名单仅安装需要套件–通过netstat-anp检查开放端口进行验证–端口扫描,并根据公司高危端口相关规定检测–通过绑定内网屏蔽外部风险–通过IPTABLES进行包过滤设置What(技术层面)•安全补丁更新•敏感信息保护•最小化安全原则•访问控制•防DOS配置•完整性检验•日志维护和保护What(技术层面)•访问控制–chmod–Setuid&Setgid–umask–chattrWhat(技术层面)•访问控制–Chmod•禁止其他人对root可能运行的脚本有写权限。–Setuid&Setgid•去除所有不必要的S位程序。–Umask•最小化权限回收–Chattr•Chattr设置隐蔽的访问控制规则What(技术层面)•安全补丁更新•敏感信息保护•最小化安全原则•访问控制•防DOS配置•完整性检验•日志维护和保护What(技术层面)•防DOS配置–专业网络设备–网络上ACL–主机TCP/IP栈调整What(技术层面)•开启LINUX自带syn-flood抵御机制进行防护。–echo1/proc/sys/net/ipv4/tcp_syncookies•使用tcp_bic算法–echo1/proc/sys/net/ipv4/tcp_bic•设置开始建立一个tcp会话时,重试发送syn+ack连接请求包的次数–echo3/proc/sys/net/ipv4/tcp_synack_retries•增大默认队列连接数–sysctl–wnet.ipv4.tcp_max_syn_backlog=1280•状态机参数–echo365536/proc/sys/net/ipv4/ip_conntrack_max–sysctl-wnet.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_recv=13–sysctl-wnet.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait=60–sysctl-wnet.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait=60What(技术层面)•开启SYN-COOKIE–sydctl–wnet.ipv4.tcp_syn_cookies=1•设置开始建立一个tcp会话时,重试发送syn连接请求包的次数–echo3/proc/sys/net/ipv4/tcp_syn_retries•放置IP路由欺骗转发–echo1/proc/sys/net/ipv4/conf/all/rp_filter–echo1/proc/sys/net/ipv4/conf/default/rp_filter•等待对方FIN包的超时时间–echo30/proc/sys/net/ipv4/tcp_fin_timeout•内存中保持IP片断的时间–echo15/proc/sys/net/ipv4/ipfrag_time•遭遇DOS时不允许ping被DOS主机–echo1/proc/sys/net/ipv4/icmp_echo_ignore_all•能够更快地回收TIME-WAIT套接字。Slackware默认是0。建议为1——开启–echo1/proc/sys/net/ipv4/tcp_tw_recycleWhat(技术层面)•安全补丁更新•敏感信息保护•最小化安全原则•访问控制•防DOS配置•完整性检验•日志维护和保护What(技术层面)•完整性检验–Tripware–Aide–自己的简单checksum•日志维护和保护What(技术层面)•安全补丁更新•敏感信息保护•最小化安全原则•访问控制•防DOS配置•完整性检验•日志维护和保护What(技术层面)•日志维护和保护–Linux系统的日志文件•/var/log/wtmp•/var/log/debug*•/var/log/dmesg*•/var/log/messages*•/var/log/secure*•/var/log/syslog*–对日志文件的保护•Chattr+ai日志文件(wtmp不可)•Syslog日志文件传送What(技术层面)•日常安全维护日常检查项目工具异常登陆last完整性检验aide异常进程、端口、帐户netstat、lsof、/etc/shadow日志审计wtmp/var/log/*流量审计tnm.oa.com、tcpdumpWhat(管理层面)•腾讯安全扫描的高危端口及服务定义•slackware服务器安全检查规范•slackware服务器安全配置规范•Security.oa.comHow•技术问题–实际应用的复杂性–易用性与安全性整合–回退方案工具准备–对业务应用熟悉•工程问题–时间进度安排–分布实施及实施决策筛选–应急备案总结-后期展望管理层应用层系统层网络层硬件层总结攻击和防守永远是此消彼长的一个动态过程;因此安全也需要大家共同参与,不断完善加强谢谢!