Potablog 1338.at Header

 
Danke für deine Unterstützung mit SQL letztens, warst echt ne große Hilfe :)
Michi hat mir die Bedeutung von JOINS, CONCAT, und COALESCE gezeigt.
Wurde natürlich postwendend auch hier in PotaBlog teilweise integriert :D

Übrigens: IP2LONG ist auch sehr interssant
Direktlink  Kommentare: 0 geschrieben von potassium am Samstag, 12.09.2009, 23:05
Eingeordnet unter: SQL, Software-Entwicklung


Nachdem Michelle mich darauf aufmerksam gemacht hat, dass im Seitenmenü die doppelte Anzahl an Seiten zB bei den Kategorien angezeigt werden als eigentlich vorhanden sein sollten hab ich mich auf Fehlersuche gemacht.
Nachdem ich ein fehlendes DISTINCT zuerst für den Verantwortlichen gehalten habe bin ich nach einiger Zeit draufgekommen, dass beim Portieren der Software der Inhalt 2 mal eingefügt wurde.
Ich hatte also eine 2spaltige Tabelle mit mehreren Tausend Einträgen und diese waren je 2 mal vorhanden. Was also tun? Manuell kann man das vergessen. Mit normalen Abfragen is mir auch nix eingefallen und siehe da das Glasgoogle hat geholfen und folgendes zu Tage gebracht:
Doppelte Einträge löschen (ganz unten)

CodeALTER IGNORE TABLE Table ADD UNIQUE INDEX temp_index (Column1 , Column2);

Es wird ein UNIQUE Index auf die gewähljten Felder gelegt und da er UNIQUE ist, sind keine doppelten Einträge erlaubt.
Ignore ist dabei das Stichwort: Dadurch werden doppelte Einträge einfach gelöscht. Sache gelöst. Juhu :D

Direktlink  Kommentare: 0 geschrieben von potassium am Donnerstag, 27.08.2009, 22:17
Eingeordnet unter: Programmieren, SQL, Software-Entwicklung


Wollte für die Entwicklung von PotaBlog eine Bugverwaltungssoftware installieren, zwecks der Übersichtlichkeit.
Hab mich nach sehr kurzer Recherche dazu entschlossen OOPS Easytrack zu benutzen.
Beim installieren hat der MySQL-Server mucken gemacht worauf ich den mal schnell upgraden wollte.
DENKSTE
GOTT SEI DANK hab ich ein Backup gemacht, sonst wärs sowieso aus gewesen.
Erst einmal die neueste Version von MySQL geladen im guten Glauben, dass man einfach upgraden kann. DENKSTE
Also bissl recherchiert und dann erstmal Version 4.1 installiert und mysql_upgrade ausgeführt. Alles ok.
Gut dann 5.1.28 installiert -> FAIL Sämtliche Tables mit Keys waren korrupt.
Nach langem hin und her (mind. 5 mal alles deinstallieren und neu installieren) bin ich durch m3 auf einen Bugreport gestoßen der es dann erklärt hat.
Man muss zuerst auf 5.0.xx (neueste Version < 5.1) updaten, DANN ein mysql_upgrade durchführen und erst DANNACH auf 5.1.xx upgraden.
SO EIN SCHEISSDRECK!

Najo, dann is endlich MySQL gelaufen und die OOPS Easytracksoftware hat sofort mal wieder die Platte verlassen. Abgesehn davon, dass ich JAVA-GUIs nicht ausstehn kann, zwingt mich das Programm zu jedem Misthaufen eine Description abzugeben. :mad:
Direktlink  Kommentare: 5 geschrieben von potassium am Freitag, 10.10.2008, 22:36
Eingeordnet unter: SQL, Softwarereview, was mich ärgert...


SQL-Injection, XSS (Cross-Site-Scripting) oder Session Hijacking sind den meisten Leuten die sich mit der Entwicklung und Sicherheit von (Web)-Applikationen beschäftigen sicherlich ein Begriff.
Doch auch anders können sich bösartige Lücken in Quelltexten auftun.

Stefan Esser schreibt auf seinem Blog Suspekt...A Blog About Code, Information Security, PHP And More über eine Schwachstelle die sich da SQL Column Truncation Vulnerabilities nennt.

Dabei wird ausgenutzt, dass ein String der mehr Zeichen hat als für ein bestimmtes Feld erlaubt sind, einfach beim Zeichenlimit abgeschnitten werden. Somit wird es möglich, dass zb ein Benutzer "admin" und ein Benutzer "admin " in der gleichen Spalte existieren, obwohl beim erstellen des 2. Benutzers eine Abfrage getätigt wurde, ob der Benutzer schon vorhanden sei.
Zitat...
Because MySQL does not compare strings in binary mode by default more relaxed comparison rules are used. One of these relaxations is that trailing space characters are ignored during the comparison. This means the string 'admin ' is still equal to the string 'admin' in the database. And therefore the application will refuse to accept the new user.

If the attacker however tries the username 'admin x' the application will search for it in the database and will not find it, because it is impossible to find a username with a length of 17 in a database field that has a 16 character limit. The application will accept the new username and insert it into the database. However the username column is to short for the full name and therefore it is truncated and 'admin ' is inserted into the database.

The result of this is that the user table now contains two users that due to trailing spaces both will be returned when the SELECT query above is executed. At this point a potential security problem arises because now it depends on how the username is treated throughout the application. The following pseudocode for example is vulnerable.
...


Mehr davon auf www.suspekt.org

Sehr empfehlenswert!
Direktlink  Kommentare: 0 geschrieben von potassium am Dienstag, 09.09.2008, 23:11


Picture
Autor: http://www.xkcd.com


Einfach nur ROFL :D
Wers nicht versteht möge sich bilden!

Via m3
Direktlink  Kommentare: 1 geschrieben von potassium am Mittwoch, 10.10.2007, 16:05
Eingeordnet unter: SQL, g33k-Humor, lost and found @ WWW


ZitatDas Backup-Programm wird die einzige noch verbliebene Sichrungskopie ohne Nachfrage überschreiben.

Oder auch: Spiele kein SQL-Dump aus auf die gleiche Datenbank, wenn du die Daten manuell entfernt hat (bis auf einen Datensatz), wenn du vorher "DROP TABLE IF EXIST" nicht entfernt hast.

Genau das habe ich gerade gemacht und mir somit 200 händisch eingetippte Datensätze vernichtet. Natürlich gibt es Backups, aber alle diese Backups sind uralt....(Murphy grüßt schon wieder...)

Beim aktuellesten Backup fehlen ca 90 Datensätze...
Das wird ne scheiß Hackn das wieder herzustellen...

Merke: Erst Denken, dann Handeln! Das erspart unglaublich viel Arbeit.
Aber vermutlich liegt das eh nur an den tierischen Temperaturen - 33° C um halb Zehn am Abend is einfach nicht normal für diese Breitengrade.
Direktlink  Kommentare: 0 geschrieben von potassium am Donnerstag, 19.07.2007, 21:29