linux服务器沦陷为它人发送短信的工具

linux服务器沦陷为它人发送短信工具的原因:


 

    今天上班产品经理说:公司的短信验证码剩余使用量为0,头一天我进行检查的时候还剩1万多条。震惊!震惊!震惊!

   

查找过程:

  一:于是查看与我们第三方短信运营商进行沟通,查看相应的情况,具体如图:

    

    当时的短信条数已经为0,我们继续查看下一条:

    

    这个已经可以简单的发现问题了:

    

    1.号码为空,发送状态为空。可能存在人为的绕过代码中的验证


    2.发送时间(日期)是接连不断的发送。代表着代码中的验证10s,30s,60s这些验证被人为的跳过了。


    3.短信运营商没有对号码进行过滤,审查。只要我们进行提交,短信运营商就进行发送,发送了就收费。


  二:查看2017.05.04 00:00后端日志的情况,具体如图:

   


   基本上日志上的内容都是这样的情况。遇到此种问题需要与开发进行沟通,协助开发解决此事。

   

   这个日志是后端的日志,我们还有前端的一个访问日志,大概都是从registerGetPhoneCode当中访问来的。我们来通过grep和awk查看一下、命令如下:


cat www.log|grep registerGetPhoneCode|awk ‘{print $1}‘ |sort|uniq -c |sort -nr |head -n 40


   如图:

   

   命令详解:查看日志文件,首先使用grep对registerGetPhoneCode进行过滤,再通过awk倒序排序,去重,只显示行数之后取文件的第一列进行输出(被我马赛克是IP,想了想还是不暴露为好)。


   很显然,由此可以看见在凌晨时它人对服务器别有用心。

三:解决办法:

   1.将这些IP全部添加到防火墙中。。。


     可使用shell脚本添加到防火墙中,可以挨个IP进行手动敲入。。。

 

   2. 此处开发传来消息,代码中:前端‘代码没有对手机号进行过滤,导致可以随意拼接参数’。找到后端的发送网址,进行发送短信。

     

     紧急开发代码,对手机号进行限制。增加相应的图形验证码。


     开发也在加班加点的解决此事。。。




总结:

    

    1.事情大概是5.4凌晨发生的,从凌晨到上班这段时间我们都没有发出报警,及时的通知相关人员,因此我们需要建立监控和报警体系。现在的开源监控框架不少,例如zabbix。


    2.代码质量需要提升,公共方法需要写入相关说明文档。


    3.建立相关安全组,减少暴露公网的端口。

   

    

     

时间: 2024-08-24 19:56:42

linux服务器沦陷为它人发送短信的工具的相关文章

java发送短信

最近在做CRM的项目,先接触到的是发送短信.我是通过SMS平台来发送短信的,本人还是菜鸟,如果有说的不对的还望大家给予指正,先谢谢了. 1.先到短信平台去注册用户 2.注册成功后,到接口API下找到UID和KEY,可以进行修改.     GBK编码发送接口地址:    http://gbk.sms.webchinese.cn/?Uid=本站用户名&Key=接口安全密码&smsMob=手机号码&smsText=短信内容     UTF-8编码发送接口地址:    http://utf

java实现发送短信

本程序是通过使用中国网建提供的SMS短信平台实现的(该平台目前为注册用户提供5条免费短信,3条免费彩信,这足够用于我们测试用了.在使用前需要注册,注册地址为http://sms.webchinese.cn/reg.shtml) 下面是实现发送短信的java源码: package com.weixinsf.utils; /** * <p>Title: 短信发送 </p> * * <p>Description: 发送短信的工具类 </p> * * @author

Linux服务器沦陷为肉鸡的全过程实录

Linux服务器沦陷为肉鸡的全过程实录 Linux服务器沦陷为肉鸡的全过程实录 从防火墙瘫痪说起 查找黑客行踪的方法 沦陷过程分析 1 oracle用户密码被破解 2 黑客动作推演 3 攻击工具一览 深刻教训 1 从防火墙瘫痪说起 2015年3月10日,还没到公司就被电话告知办公室无法正常连接互联网了,网速非常慢,无法正常浏览网页.急急忙忙感到公司,开始查找问题. 首先排除了交换机故障,因为内部局域网正常.当ping防火墙设备时,丢包严重.很明显,防火墙出了问题,撑不住了,其Web管理界面根本无

web服务器不能正常发送短信

网站注册,用户获取验证码失败,经过网站开发兄弟提醒,研究了下fsockopen()等函数,现摘要如下 Fsockopen() (PHP4,PHP5) 用于打开一个网络链接或一个unix套接字链接. 也就是说,既然此函数会参与短信API收发,那么就有可能该函数打开了一个unix套接字链接,此时网站开发的兄弟亦证实了这点. 于是我马上想到很有可能是采用了三种套接字类型中的流套接字(sock_stream).那么就会产生3次握手.于是用iptables命令发现,交互包被防火墙drop掉了.但是仅到此,

微信小程序如何发送短信验证码,无需搭建服务器

自从微信小程序提供云开发支持,开发者无需搭建后台服务器,使用微信提供的核心API就可以实现应用功能,此时就需要小程序能够自己发送短信,比如短信验证码,榛子云短信(http://smsow.zhenzikj.com)为此开发了一套专门用于小城的SDK,详情参考: http://smsow.zhenzikj.com/doc/sdk.html 下面小编就详细讲解一下如何使用: 1.安装 下载后的SDK只包含一个zhenzisms.js文件,可直接放在utils文件夹中,然后通过require引入,如下

java 短信猫发送短信的方法

用java实现短信收发的功能,目前一般项目中短信群发功能的实现方法大致有下面三种: ·                 1. 向运行商申请短信网关,不需要额外的设备,利用运行商提供的API调用程序发送短信,适用于大型的通信公司. ·                 2. 借助像GSM MODEM之类的设备(支持AT指令的手机也行),通过数据线连接电脑来发送短信,这种方法比较适用于小公司及个人.要实现这种方式必须理解串口通信.AT指令.短信编码.解码. ·                 3. 借

安卓学习之接收、发送短信

短信接收 android中当手机接收到一条短信后,会发送android.provider.Telephony.SMS_RECEIVED 的广播,这条广播中携带有与短信相关的所有数据.每个应用程序都可以在广播接收器里对他监听. 简单的短信接收程序: protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main

Java调用SMSLib发送短信详解

项目中需要用到发送短信功能,之前没做过这方面,找人咨询了一下,也网上查了查,发现并不是很复杂.目前项目已经完成了,做个记录以备后用.程序中发送短信主要有4种方法: 1.向当地的运营商申请网关,不需要额外的设备,利用对方提供的 API调用程序发送短信,适用于大型的通信公司.稳定,速度快,适合短信量特别大的需求,需要连接到运营商的网络中,不适合内网项目. 2.短信猫发送短信,借助像 GSM MODEM之类的设备(支持AT指令的手机也行),通过数据线连接电脑来发送短信,这种方法比较适用于小公司及个人.

C# 通过串口发送短信

手机短信群发作为企业日常通知,公告,天气预报等信息的一个发布平台,在于成本低,操作方便等诸多特点,成为企业通讯之首选.本文介绍短信的编码方式,AT指令以及用C#实现串口通讯的方法. 前言目前,发送短信的方式主要有三种: 1.网关方式:向当前电信部门申请,不需要另外设备.但是费用相对来说,比较高,以目前上海移动公司推出的短信群发套餐来说,对于中小企业的短信息的发送数量来看, 短信群发和打电话相比,几乎没有什么优势.对于几万人的大公司而言,可能很便宜.对于几百人甚至更少人的公司来说,这种方式根本不划