Moin!
mysql> insert into testing (id, a_session) values ('sadsad', 'safadsf');
Klar das waere korrekt aber was ist wenn in dem
Modul das auf die andere korrekte art gemacht wurde?
Niemand, der bei Sinnen ist und in der Lage, ein Perl-Modul zu schreiben, würde sich auf irgendeine geringste Weise auf undefinierte SQL-Statements verlassen.
Man macht es einfach NICHT, bei einem INSERT die zu belegenden Felder WEGZULASSEN. Macht man einfach nicht. Du kannst davon ausgehen, dass dies nicht geschieht.
Und ein wenig Quelltext nach "INSERT" zu durchforsten kann ja nicht wirklich ein Problem sein.
Riskierst Du's?
Ja. Definitiv. Weil ich nicht glaube, dass CPAN-Programmierer _so_ bescheuert sind.
Ich würde es mich nicht trauen ...
in irgendeinem ungetesteten Case kommt dann der Error ;(
Wenn du so wenig vertrauen in vorgefertigte Module hast - warum setzt du sie dann überhaupt ein? Kann doch genausogut sein, dass das Modul schlechte (vorhersagbare) Session-IDs erzeugt, und schon hast du ein Sicherheitsproblem beim Login-Bereich! Oder das Modul sichert aufgrund eines dummen Bugs Variablen mit dem Bestandteil "ID" falsch.
Man weiß es nicht. Man kann den Quellcode aber lesen, um sicherzugehen. Oder darauf vertrauen, dass das Modul sich wie gewünscht verhält, weil die Programmierer schlau genug waren, sich an gewisse Mindeststandards zu halten.
Die Angabe der zu belegenden Spalten bei INSERT gehört dazu.
- Sven Rautenberg
Die SelfHTML-Developer sagen Dankeschön für aktuell 12726,12 Euro Spendengelder!