Current-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: DoS attack against TCP services
On 13 Mar 2015, at 14:57, Christos Zoulas <christos%zoulas.com@localhost> wrote:
> On Mar 13, 1:08pm, hannken%eis.cs.tu-bs.de@localhost ("J. Hannken-Illjes") wrote:
> -- Subject: Re: DoS attack against TCP services
>
> | This was just an idea ... Maybe
> |
> | ...xs..timeout * sc->maxunits + 10
> |
> | and set xs timeout to 1 .. 5 seconds?
> |
> | I don't think it is possible to make it self adjusting as the
> | sysmon framework doesn't know the drivers timeouts.
>
> I guess I can clamp the ccb timeout to 60 seconds...
Good.
> | > | > Nevertheless, I think that the big problem with ciss is now
> | > | > fixed (i.e. it will not hang forever anymore)...
> | > |
> | > | It may still wait longer than 30 seconds with the sme_mutex held
> | > | leading to deadlock.
> | > |
> | > | We should use a suitable xs timeout vs. events timeout to make it safe,
> | > | either increase the event timeout or decrease the xs timeout.
> | >
> | > It would be nice if it was safe by default, and it should spam the
> | > kernel if it was late so that we know about it...
> |
> | Unfortunately it may deadlock BEFORE it finds a non-empty workqueue.
>
> Can't it just try to acquire the lock and if it fails it spams, and
> does not deadlock? Or even better, finds the driver that blocks it,
> and bumps its timeout? It is annoying to have a monitoring service
> DoS the whole machine...
Suppose sysmon should use a second mutex for workqueue management only.
This way it should be possible to detect a non-empty workqueue,
print a message and stop adding new work.
--
J. Hannken-Illjes - hannken%eis.cs.tu-bs.de@localhost - TU Braunschweig (Germany)
Home |
Main Index |
Thread Index |
Old Index