Re: CPU 100% usage caused by iso-8859-1 postgres process.. - Mailing list pgsql-performance

From Tomas Vondra
Subject Re: CPU 100% usage caused by iso-8859-1 postgres process..
Date
Msg-id 96e72d15-7edf-96bd-69e1-59ef562f4ca8@2ndquadrant.com
Whole thread Raw
In response to Re: CPU 100% usage caused by iso-8859-1 postgres process..  (Justin Pryzby <pryzby@telsasoft.com>)
List pgsql-performance

On 12/13/2017 01:19 PM, Justin Pryzby wrote:
> On Wed, Dec 13, 2017 at 11:36:11AM +0100, Laurenz Albe wrote:
>> Dinesh Chandra 12108 wrote:
>>> My CPU utilization is going to 100% in PostgreSQL because of one unknown process /x3303400001 is running from
postgresuser.
 
>>>  
>>> PID   USER      PR  NI    VIRT    RES    SHR S %CPU %MEM   TIME+   COMMAND
>>> 19885 postgres 20   0  192684   3916   1420 S 99.3  0.1   5689:04  x3303400001 
>>>  
>>> The same file is automatically created in Postgres Cluster also. I am using Postgresql-9.3.
>>>  
>>> Kindly suggest how can I resolve this issue.
>>
>> I don't know, but the same problem has been reported on Stackoverflow:
>> https://stackoverflow.com/q/46617329/6464308
>>
>> If your queries look similar, then you might indeed be the victim of an attack.
>>
>> Figure out where the function and the executable come from.
>>
>> In case of doubt, disconnect the server from the network.
> 
> Looks suspicious; I would look at (and save) things like these:
> 
> ls -l /proc/19885/exe
> ls -l /proc/19885/fd
> ls -l /proc/19885/cwd
> 
> sudo lsof -n -p 19885
> sudo netstat -anpe |grep 19885
> 
> Stacktrace with gcore/gdb is a good idea.
> Save a copy of your log/postgres logfiles and try to figure out where it came
> from.  Since an attacker seems to control the postgres process, your data may
> have been compromized (leaked or tampered with).
> 

Any details about the x3303400001 file (is it a shell script or some
kind of binary)?

FWIW the queries (listed in the stackoverflow post) are running under
postgres, which I assume is superuser. The backend has full access to
the data directory, of course, so it may create extra files (using
adminpack extension, for example).

If that's the case (and if it's indeed an attack), it either means the
attacker likely already has access to all the data. So presumably
x3303400001 is doing something else at the OS level.

regards

-- 
Tomas Vondra                  http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services


pgsql-performance by date:

Previous
From: Justin Pryzby
Date:
Subject: Re: CPU 100% usage caused by iso-8859-1 postgres process..
Next
From: Justin Pryzby
Date:
Subject: Re: Bitmap scan is undercosted? - overestimated correlation andcost_index