跳板机,有什么办法解决吗?
大规模DDos流量清洗
关于服务器被人攻击的处理,当然先要分两种情况,如果是大规模DDos抢注攻击的话,一般对付办法不多,根本办法是通过运营商做流量清洗,分布式部署系统分流。用一些基于公有云的防护手段(费钱,效果一般般),一些安全公司昂贵的设备(作用也不大,有钱就可以多买)。
一般性防护手段,通过硬防或者软防火墙比如iptables,主要要限制服务器端口访问,除了必须的80,443以外其他端口一律不对外开放。
关于对外开放端口限制和检测的访问,我的原创文章都提过几篇介绍过:
「安全扫描」看好你的大门,企业安全端口扫描实践
基本上就是在外面扫描你服务器ip,看都开了那些端口,对不该开放端口开放的话就封禁掉。主要对外开放的危险端口有 所有udp端口(比如最近大规模针对github的攻击,就用对外开放的memcache udp 11211 udp端口进行的反射式攻击),tcp重点关注端口: 21(ftp),22(ssh) 23(telnet),2181(zookeeper),3306(mysql),6379(redis),8161和61616(mq),11211(memcache),27017/27018(mongodb),9200(elasticsearch)还有其他的根据企业部署情况来增加。
在服务上查看开放的监听端口情况使用命令:
netstat -ntualp
Local地址 类似于 0.0.0.0:3306和 :::22的监听的服务器就要重点关注,一般除了web都不应该对外开放。
对web服务:
1、注意升级所用程序的版本,有漏洞的要及时升级(比如dedecms,struts2的漏洞等),部署的时候注意权限设置,不给多余的权限。
2、部署必要的waf系统,安利下笔者有个开源免费的waf,有需要的可以联系我。
3、部署时候精良先通过CDN或者自己用nginx返乡代理来对用户,不直接把php 应用、tomcat应用服务器对外,这样即可以提高访问效率,增加访问并发,还可以低于短期大流量访问的冲击。
如果服务器被人攻击,挂马了,怎么排除和解决常见异常情况:异常的流量、异常tcp链接(来源端口,往外发的端口)、异常的访问日志(大量的ip频繁的访问个别文件)。
如果部署了监控系统的话(强烈建议部署zabbix,并增加对系统添加专门安全items),可以方便通过zabbix监控图和趋势对比了解这些信息:
利用last,lastb发现异常的用户登录情况,ip来源。
利用lastlog,/var/log/message,/var/log/secure,日志等,是否权限已经被攻陷。
用history 发现shell执行情况信息。
用top,ps,pstree等发现异常进程和服务器负载等情况。
用netstat -natlp发现异常进程情况。用w命令发现当前系统登录用户的情况。
如果发现异常用户,立即修改用户密码,pkill -kill -t tty 剔除异常用户。然后进行进一步处理。
发现异常进程,立即禁止,冻结禁止。
发现一个恶意进程后通过 ls -al /proc/Pid (Pid为具体的进程号),发现进程的启动路径,启动的文件所在目录等信息。
如果发现异常连接数,通过iptables封禁相关端口或者ip
iptables -I INPUT -s ip -j DROP
iptables -I OUTPUT -p tcp --dport 25 -j DROP
iptables -I INPUT -p tcp --dport 25 -j DROP
对清理移动木马,杀掉进程
首先清理掉木马创建的cron 计划项和启动项。
ls -al /etc/proc/Pid/ 找的恶意木马文件。
恶意进程的执行目录和文件
最后用一条命令 kill -9 所有的进程ID && rm -rf 所有涉及的文件和目录。
更多信息可以关注笔者的文章或者咨询笔者:
「系统安全」当网站发生异常,出现安全事故,如何进行排查处置?
「WEB安全」单行命令查杀Webshell(php为例)
专业术语跳板机是什么意思?
跳板机的作用:如果控制机与受害机直接相连,设想,如果这时受害机已经查出是是哪一台机子发出的Dos时,就会把黑客自己的身份暴露。
那如果在受害机察觉以前把控制机的“脚印”全部删除不就可以了?如果你只想攻击受害机一次,那么有无跳板机都可,但如果你想多次攻击受害机,那么你每次都要把自己控制机上的“脚印”删除的干净(包括相关的原代码),这样当你下次要想再攻击受害机时,等于是要重新再建立攻击过程。如果中间有一个跳板机,那么你只需要如在跳板机上的“脚印”删除即可,这样受害机当查到跳板机时,线索就断开了。所以有一个跳板机的作用会使黑客自己本身更加安全。堡垒转怎么开?
1. 堡垒转可以通过远程桌面软件进行开启。2. 堡垒转是一种远程管理技术,通过在跳板机上安装堡垒机软件,实现对目标服务器的远程管理。开启堡垒转需要先登录跳板机,再通过跳板机连接目标服务器,从而实现远程管理。3. 在使用堡垒转前,需要先了解相关的网络拓扑结构和安全策略,确保系统的安全性和稳定性。同时,还需要熟悉远程桌面软件的使用方法,以便能够顺利地进行远程管理操作。
如何对服务器整体安全性进行检查和修复?
提前检查
服务器和网站漏洞检测,对Web漏洞、弱口令、潜在的恶意行为、违法信息等进行定期扫描。代码的定期检查,安全检查,漏洞检查。服务器安全加固,安全基线设置,安全基线检查。数据库执行的命令,添加字段、加索引等,必须是经过测试检查的命令,才能在正式环境运行。
数据备份
服务器数据备份,包括网站程序文件备份,数据库文件备份、配置文件备份,如有资源最好每小时备份和异地备份。建立五重备份机制:常规备份、自动同步、LVM快照、Azure备份、S3备份。定期检查备份文件是否可用,避免出故障后,备份数据不可用。重要数据多重加密算法加密处理。程序文件版本控制,测试,发布,故障回滚。
安全监控
nagios监控服务器常规状态CPU负载、内存、磁盘、流量,超过阈值告警。zabbix或cacti监控服务器常规状态CPU负载、内存、磁盘、流量等状态,可以显示历史曲线,方便排查问题。监控服务器SSH登录记录、iptables状态、进程状态,有异常记录告警。监控网站WEB日志(包括nginx日志php日志等),可以采用EKL来收集管理,有异常日志告警。运维人员都要接收告警邮件和短信,至少所负责的业务告警邮件和短信必须接收,运维经理接收重要业务告警邮件和短信。(除非是专职运维开发)除服务器内部监控外,最好使用第三方监控,从外部监控业务是否正常(监控URL、端口等),比如:监控宝。
故障避免预防
网站WEB增加WAF,避免XSS跨站脚本、SQL注入、网页挂马等漏洞威胁。程序代码连接数据库、memcache、redis等,可以使用域名(域名HOSTS指定IP),当出问题,有备用的服务器,就可以通过修改DNS或者HOSTS,恢复服务。建立应急预案机制,定期演练事故场景,估算修复时间。部署蜜罐系统,防范企业和服务器内网APT攻击。建立双活集群,包括业务服务的高可用,避免业务服务单点。服务器集群采用跳板机或堡垒机登录,避免服务器集群每台服务器可以远程连接管理。操作重要业务升级、迁移、扩容……之前,列一下操作步骤,越详细越好,实际操作按步骤操作,操作完做好记录。
事中操作
网站WEB增加WAF,发现XSS、SQL注入、网页挂马等攻击,会自动拦截,并记录日志。检查服务器数据备份是否可用。在处理需求和故障时,执行风险命令(比如rm、restart、reboot等)需再三确认,执行命令前,检查所在服务器,所在服务器路径,再执行!不要疲劳驾驶,喝酒不上机,上机不喝酒,尤其别动数据库,避免在不清醒的状态下,在服务器上执行了错误命令,导致数据丢失或业务故障。在处理事故时,一定要考虑处理措施是否会引发连锁故障,重要操作三思而行。
事后检查分析
实现网络安全可视化管理,可以看到每天有那些异常IP和异常URL请求,服务器集群开放端口列表等。能对全网进行安全策略集中管理。统一日志收集和分析。备份及篡改恢复功能,程序文件、图片、数据文件、配置文件的备份,故障回滚机制。对攻击日志进行深度分析,展现攻击路径、攻击源,协助管理员溯源。践行DevOps的无指责文化,尤其是在做事故分析时。事故分析重在定位原因,制定改进措施;
国内银行系统用美国甲骨文Oracle数据库不怕泄密吗?
知晓“棱镜门”的小伙伴们能震撼的感觉到网络隐私的脆弱性,许多顶尖科技公司纷纷中枪。随着近几年各种网络安全事件爆出,许多人从心理上产生了隐忧,总有一种“总有刁民想害朕”臆想。但讲真过去还确实找不到比Oracle优秀的数据库,对于老牌银行系统来说,Oracle数据库早已经在整套运转的系统中根深蒂固,想要完全替换Oracle数据库是一个艰难的过程。
Oracle数据库说白了还是商业体系下的产品,使用它的时候不光要购买授权费,每年都还需要购买技术服务费。假如Oracle维持不了这样的商业操守,就会和溃千里之堤的蚁穴一样,瞬间让许多年培养起来的客户群体瞬间崩塌。
银行可以通过防火墙、架构等等硬件手段和技术手段将数据库服务器和外部连接进行隔离。了解过企业专线的小伙伴就知道,银行的网络、数据库、服务器其实可以完全地做到和外界互联网相隔离,这样就能从根本上杜绝“Oracle”这样界别的软件外传数据。
大家以为这就完了吗?没有。国家还有一整套监控互联网国际出口内容的软硬件系统集合,就是防火长城。它的审计功能可以有效防止境外窥探和窃密,也能防止国内网民访问一些境外不健康、不和谐的信息。防火长城的强大之处,相信很多网民都体验过。
曾经在数据库领域一度是Oracle的江湖拜读过《What Goes Around Comes Around》,大神把数据库历代发展成就分析得非常的透彻。过去一度是Oracle带着小弟MySQL,以及微软的SQL Server领跑,追赶的人连他们的尾巴都看不到。
数据从提出概念到成形,再到流行至今已经历经了半个多世纪,大致可以分为9个关键性的历史时期,自始至终都离不开数据模型:
20世纪60年代末~70年代:层级数据模型20世纪70年代:网络数据模型20世纪70年代~80年代早期:关系数据模型20世纪70年代:实体-关系数据模型20世纪80年代:拓展的关系数据模型20世纪70年代末~80年代:语义数据模型20世纪80年代末~90年代早期:面向对象数据模型20世纪80年代末~90年代早期:对象-关系数据模型20世纪90年代末到现在:半结构化数据模型Oracle数据库属于早期第一波抓住商业机会的,所以才能保持到现在依然是行业领先。金融、电信等许多行业都围绕着Oracle的生态在发展,所以才铸造了Oracle的黄金时代,近乎垄断了数据库市场。
数据库的风向标改变并不是因为安全性许多互联网大厂去O的很大一部分原因是它已经不能满足时下大体量业务发生的需求。在云时代昂贵、低扩展性、低可用性、高运维难度的传统商业数据库正在成为一块鸡肋。一些新兴的银行可以完全不建立在IOE的体系之下,但老牌大体量的传统行业想要跳出“Oracle”构建的框架体系,显得十分的困难。但毫无疑问,数据库会迎来百家争鸣的局面,而我们现在处在了起跑线上,不像过去完全靠购买授权和服务。
以上个人浅见,欢迎批评指正。
认同我的看法,请点个赞再走,感谢!喜欢我的,请关注我,再次感谢!
还没有评论,来说两句吧...