From: | Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com> |
---|---|
To: | Justin Pryzby <pryzby(at)telsasoft(dot)com>, Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at> |
Cc: | Dinesh Chandra 12108 <Dinesh(dot)Chandra(at)cyient(dot)com>, "pgsql-performance(at)postgresql(dot)org" <pgsql-performance(at)postgresql(dot)org> |
Subject: | Re: CPU 100% usage caused by unknown postgres process.. |
Date: | 2017-12-13 15:22:47 |
Message-ID: | 96e72d15-7edf-96bd-69e1-59ef562f4ca8@2ndquadrant.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | 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 postgres user.
>>>
>>> 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
From | Date | Subject | |
---|---|---|---|
Next Message | Justin Pryzby | 2017-12-15 20:54:06 | Re: Bitmap scan is undercosted? - overestimated correlation and cost_index |
Previous Message | Justin Pryzby | 2017-12-13 12:19:52 | Re: CPU 100% usage caused by unknown postgres process.. |