![]() |
|
|
|
||||||
|
coding without a clue
I'm going to be rich. For mental anguish, suffering, induced paranoia and trauma, my lawyers will get in line with all the others going after Jon's mountains of gold.
(Ok, this is barely on-topic for this forum, but I have to squawk about it somewhere. Also, it's about what will hopefully become the basis of the new journal software and so any suggestions or help from Hotrodders.com members should come out here.) I broke everything about 'journals_test' (http://www.crankshaftcoalition.com/f...&page=11&pp=10) while trying to eliminate places where SQL injection attacks could take place. Jon is the one who mentioned such attacks and is thus responsible for my paranoia and suffering resulting from a Google search to find out how those happen. It's amazing how many trivial ways attackers can take over databases through "web apps". The latest breakage took a marathon of head-banging to fix. My idiotic, Frankensteinian mess kept naming all uploaded photos by the journal ID, saving them in the wrong place, not updating the photos table in the database, and being smug about it by not reporting any error at all. After a day, 2 all-nighters, and creating 32 broken or empty test journals, it remains smug, but functions as it should. (The worst was caused by the differences between MySQL's LAST_INSERT_ID and PostgreSQL's currval('[sequence name]').) Things that are working: - multiple journals per user - a summary entry for each journal, with 1 photo - a table of contents per journal, with thumbnails - 0 to 6 photos per entry, with thumbnails - paging of journal summaries - sorting by journalid, userid, date, entries, views, etc. Things still broken: -- adding an entry -- editing an entry -- formatting user input As soon as those work again, I'll upload the whole mess to the Crankshaft Coalition thread linked above. A limited test of it will then be set up on my own website. Feedback and help are welcome. Back to breaking things... |
|
|||||
|
I'm a SQLServer/windows/web programmer - don't know MySql at all...seems a lot of your problems could have been solved using a transaction space to manage inserts/updates across tables...also I'd guess you aren't using RI to inforce relationships? - otherwise you should have gotten an error...but again I come from SQL Server background and maybe MySql isn't as robust?
|
|
||||||
|
None of your assumptions have anything whatsoever to do with the problems described. That includes the rather bizarre notion of "robust" applying to MS SQLS. You might want to think about why Microsoft prohibits publication of benchmark comparisons, to the point of legal threats.
I think this thread is already dead, which means I should not have started it in the first place. |
|
|||||
|
Quote:
Asking someone for their help or opinion and then telling me that my "None of your assumptions have anything whatsoever to do with the problems described..." is not only wrong based on your description of the problem it's disrespectful and belligerent - I doubt I'll take any time to answer another of your posts... |
|
||||||||||
|
Ok, these allegations require a response.
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Now, to top it all off, MySQL was mentioned once: Quote:
To sum up: 1. Transactions do not prevent flawed logic. 2. Referential integrity checking does not prevent flawed logic. 3. One can mash a thumb with any brand of hammer. Back to MS SQLServer, the scariest accounts of SQL injection attacks that I found were associated with that product. It seems that when MSSQLS is compromised by user input such as 1' OR '1'='1', it's not just the database than can be taken over. The server can be instructed to silently redirect so that users continue to think everything is fine, yet their data is going straight to the attacker's server. Just another "feature" that comes from tying "applications" too tightly with the underlying operating system. The fact that the journal software needs to be multi-platform and freely alterable by sysadmins pretty well excludes MS products. MS is the spoiled brat of computing -- they must have everything to themselves and done their way or they won't play. Now, after suitable time for you to respond if you so desire, I hope that some moderator will be merciful and send this thread to the dump. It does not include suggestions for inclusion in the new journal software, it does not include any help for making the new journal software more secure and it likely has zero chance of acquiring any information along those lines. |
|
|||||
|
http://www.spidynamics.com/whitepape...LInjection.pdf
Quote:
|
|
||||||
|
Quote:
Thanks for that link. The PDF is heavily focused on MS SQL Server and Oracle, and a bit light on solutions, but it contains good examples of techniques. The section on testing is particularly helpful. All of my database work has been in protected situations where no outside connection to the database server existed. It didn't matter if a query returned more information than necessary because the only people able to submit a query were already trusted with all data. I've never fallen into a "dead end" like is described in the part you quoted, but I did have a query (not in the journals test) that included over 300 "union all" clauses. That's over 300 subexpressions where such a dead end loop could have happened. It's as nerve wracking as finishing an engine rebuild and wondering where the air filter wingnut went. |
|
|
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| dont have a clue | notsure | Engine | 5 | 12-31-2006 10:50 AM |
| Date coding GM starters? | zmanan | Engine | 0 | 10-21-2006 09:32 AM |
| 91 Taurus...unknown tones going off....any body have a clue.... | nastynova | Engine | 5 | 12-21-2004 11:01 AM |
| Some will remember this...some won't have a clue to most | Kevin45 | Hotrodders' Lounge | 59 | 11-04-2003 03:49 AM |
| interior colors no clue what to go with | mathjew | Interior | 4 | 10-10-2003 06:23 PM |