本来只是贪便宜买了个一年特价的阿里云服务器,做做测试什么的,结果不知道哪一天开始阿里云安全中心就开始给我发什么安全提示类的信息,一开始我并不在意,因为这些都是套路,不过是想让我升级购买高防盾罢了,反正是测试用的服务器无所谓,顶多就重装系统罢了。就这样过了半年左右,最近安全提示就像短信轰炸一样铺天盖地的来,近来也比较空就看了一眼,WTF成为挖矿肉鸡了,于是开始清理。。。。

一开始以为就是简单的计划任务清理下就完事了,结果无限循环,于是开始百度。

#登录我的ubuntu查看了一下进程
ps -ef

发现多了几个postgres向远程服务器发送请求的进程,于是优先想到杀死进程

kill  进程ID

全部杀完再次查看,MLGB自启动了又多了一堆,这个时候就想应该是从postgres这个用户入手,回想了半天但是装PG的时候似乎是跟着网上的教程弄,搞得本地的postgres用户密码为空,于是赶紧加个密码

sudo passwd postgres

设置好之后又杀了一遍进程,心想应该OK了吧,MLGB一查看又一堆,于是静下心来冥想,终于应该是我的postgres远程连接密码太弱造成的吧,于是改密码

#登录psql终端
sudo -u postgres psql
#在终端提示行底下键入
ALTER USER postgres WITH PASSWORD ‘一大堆乱七八糟自己都记不住的字符’;
#然后退出终端
\q
#重启服务
sudo service postgres restart

心想这下应该好了,结果不出意外还是MLGB,改都改了难道不对?于是决定先停下postgres服务

service postgres stop

好的,服务是停了进程还在,于是再杀一遍,这次查看HAHAHAHA好了~!

但是我是需要启动postgres服务的,于是再次启动

service postgres start

果不其然,那堆熟悉的进程又回来了。。。

不过这次大概知道方向了,和postgres这个服务有关系,那么是不是这个东西有什么补丁没打?于是一顿搜索,都是教人怎么注入postgresql的

好吧,自己尝试一下吧,于是仔细查看了进程信息发现都是通过/bin/sh来启动curl

于是心想把这两个东西干掉不就完事了

#然后通过find命令找到他们
find / -name sh
find / -name curl

出来一大堆结果,仔细筛选一下锁定了/bin/sh  和 /bin/curl

于是二话不说一顿删除

rm -f /bin/sh
rm -f /bin/curl

再次查看进程,OH~YEAH那些进程果然通通消失了

赶紧重启机器确认一下

reboot

WTF各种服务开不起来了,service命令提示没有权限,什么鬼,这下懵逼了,于是想到莫不是删了系统的东西?赶紧搜索一下,果不其然sh是用来启动脚本的,完了个蛋,赶紧查一下补救方法

#终于找到了补救方法就是通过/bin/bash做一个软连接就可以,问题是该目录下要有bash,还好运气不错该目录下有bash于是就做个软连接
ln -s /bin/bash /bin/sh

再次重启,各项服务都正常了,连那个该死的挖矿进程也回来了,*()&%*……*&%

回到原点,再次分析进程发现都是去访问https://pastebin.com/这个网址,于是就去搜索这个网址,果然找了了一些前辈的分享,赶紧瞜一眼

我找到了这篇https://blog.csdn.net/u010457406/article/details/89328869

跟着里面的步骤发现我ubuntu的系统yum不到bz2,又束手无策了,于是继续往下看,好家伙这位大哥把清楚函数的代码贴出来了,真是感激,于是照着里面写的命令一条一条的试,果然隐藏着无数的坑,顺便提一下我的是被伪装在sendmail的文件中通过crontab定时任务发送,于是一顿操作之后系统似乎没事了,各种重启什么的也没问题,至今问题解决已经过了8小时暂时安全,已经跟着阿里云里面这方面的补救措施一步步做了。

PS:最后提一嘴,宝塔面板虽然好用但是不会配置的东西还是不要乱装,或者要了解一下再装,我用宝塔安装的redis虽然傻瓜但是没有提供更改端口和开启密码的接口,似乎有些人是因为redis的漏洞被注入的,希望看到文章的兄弟们如果redis没有密码没改端口是时候行动起来了~!

postgresql被注入之后的更多相关文章

  1. MySQL&SQL server&Oracle&Access&PostgreSQL数据库sql注入详解

    判断数据库的类型 当我们通过一些测试,发现存在SQL注入之后,首先要做的就是判断数据库的类型. 常用的数据库有MySQL.Access.SQLServer.Oracle.PostgreSQL.虽然绝大 ...

  2. PostgreSql那点事(文件读取写入、命令执行的办法)

    • 2013/07/9 作者: admin PostgreSql那点事(文件读取写入.命令执行的办法) 今天无意发现了个PostgreSQL环境,线上学习了下,一般的数据注射(读写数据库)差异不大,不 ...

  3. 【WPF】EntityframeworkCore NLog出力设置

    最近在用EFcore,由于不熟悉,经常出现一些异常都不知道如何排查,只能把EFcore的执行记录打印出来调查.确实简化了很多问题的调查. 官网提供了Asp.net Core与.net core 应用的 ...

  4. [SQL注入2]FROM SQL INJECTION TO SHELL: POSTGRESQL EDITION

    FROM SQL INJECTION TO SHELL: POSTGRESQL EDITION 这里先介绍一下POSTGRESQL.这是一款数据库管理系统,与oracle是同类型软件.08年左右的市场 ...

  5. PostgreSQL的insert注入

    写这篇文是在昨夜的ctf中遇到的. ctf地址:bloody-feedback.quals.2017.volgactf.ru email存在注入,在ctf中发现注入就很好办了,只要找到能绕过的方法就行 ...

  6. PostgreSQL注入基础

    一般注入多用于在mssql和mysql两类数据库中,如mssql+asp.mysql+php则是最为常见的搭配环境.不同的网站应用的数据库也大不一样,根据数据库的处理能力.负载等多重因素决定.本文主要 ...

  7. 关于PostgreSQL的SQL注入必知必会

    一.postgresql简介 postgresql是一款关系型数据库,广泛应用在web编程当中,由于其语法与MySQL不尽相同,所以其SQL注入又自成一派. 二.postgresql的SQL注入:(注 ...

  8. Asp.Net Core 项目实战之权限管理系统(4) 依赖注入、仓储、服务的多项目分层实现

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  9. Asp.Net Core 项目实战之权限管理系统(3) 通过EntityFramework Core使用PostgreSQL

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

随机推荐

  1. Redis 主从,哨兵,集群实战

    下载地址及版本说明 Redis 各版本下载地址: http://download.redis.io/releases/ 版本说明:一般来说版本号第二位,偶数是稳定版本,奇数是在开发中的版本 本文基于R ...

  2. 基于WeChat的消息存储备份、远程控制、小功能项目开源分享计划

    WeChat+ 关于该项目 起源 该项目的起因是一个比较程(老)序(油)猿(条)的理由,有一天我发现我下班时间比较早,有点尴尬,但是又不想没事干还坐在公司,那么如何解决我的问题呢,初步想法是远程控制电 ...

  3. Ubuntu 卸载openJDK

    如果你在 Ubuntu 软件中心安装过 OpenJDK,请先使用如下命令将其删除: $ sudo apt-get purge openjdk*

  4. ps查看图层大小快捷键

    1.图层大小尺寸的: ctrl+alt+c 2.图片大小尺寸.像素大小: ctrl+alt+i

  5. Java 基本数据类型极限值

    public static void main(String[] args){ System.out.println("Integer.MIN_VALUE = " + Intege ...

  6. asp.net编译中出现 数据库 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\test1.mdf' 已存在。请选择其他数据库名称。

    关于asp.net编译中出现数据库 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\test1.mdf ...

  7. Python Excel操作——xlrd、xlwd

    读取 1.导入模块 import xlrd 2.打开Excel文件读取数据 data = xlrd.open_workbook('excel.xls') 3.获取一个工作表 1 table = dat ...

  8. 网关我选 Spring Cloud Gateway

    网关可提供请求路由与组合.协议转换.安全认证.服务鉴权.流量控制与日志监控等服务.可选的网关有不少,比如 Nginx.高性能网关 OpenResty.Linkerd 以及 Spring Cloud G ...

  9. http post 请求,带参数,带请求头

    #!/usr/bin/env python # -*- coding: utf-8 -*- import requests import json url = 'http://............ ...

  10. 某CTF平台一道PHP代码审计

    这道题不是说太难,但是思路一定要灵活,灵活的利用源码中给的东西.先看一下源码. 首先要理解大意. 这段源码的大致的意思就是,先将flag的值读取放在$flag里面. 后面再接受你输入的值进行判断(黑名 ...