Re: Fault injection via man-in-the-middle proxy?
Frediano Ziglio <[email protected]> Sat, 12 Nov 2016 21:02:56 +0000
| Newsgroups | gmane.comp.db.tds.freetds |
|---|---|
| Message-ID | <CAHt6W4d0cc5kByP8TtsRkhmjzZeUUPOZYdVYiOAHfpMyQOd+wQ@mail.gmail.com> |
2016-11-11 17:53 GMT+00:00 David Bakin <[email protected]>: > (New to the list, new to TDS: I may have serious misconceptions!) > > I'm thinking it would be useful - in order to help diagnose certain client-side reliability issues due to network problems we occasionally experience that lead to database connections returning errors (at the client-side) - to have a sort of man-in-the-middle proxy that could do SQL-oriented fault injection - e.g. returning errors at the protocol level, or simulating network faults (e.g., abnormal delays, or timeouts). > For network tools you should probably find lot of tools. Even using VPN software and stopping them can give good tests. > (It's hard for me to find the right keywords for a google search as it turns out that "SQL Fault Injection" has a completely different meaning ...) > > So ... a couple of questions: > > > a) Does this even make sense? > Maybe > b) Is there an existing tool that'll do it? > Not as far as I know > c) Can I use FreeTDS to create a tool that'll do it? > > * Does this sound like a promising approach (assuming the answer to point a is "yes")? > > * As to point c - an earlier message on this list pointed a requester to tdspool as a starting point. > > o Is tdspool a good starting point? > Can be, it's actually a SQL proxy. > o This message/response was in 2010 and the response was that tdspool was subject to bit rot - I do see now in git that it was last updated only 4 months ago ... so I assume it is working now? > Yes, has some limits like sql users and not encryption but works. On the other side it reads packet content only at login time. > * Assuming a = yes, b = no, c = yes and I go ahead with this, do you think the end result would be of general interest? > Don't know. > Thanks! - David > > P.S. The environment is Windows, ODBC, SQL Server, and the client is a C++ application. All FreeTDS is quite portable. Frediano