Hibernate Query Language

via webappsec。以下のようなコードは危険なので、このAPIはdeprecatedになった。まあ、当たり前といえば当たり前だけど。OWASP 2.0の例らしい。

Payment payment = (Payment) session.find("from com.example.Payment as payment where payment.id = " + paymentIds.get(i));

追記: Session.iterate(String,...)とかSession.delete(String,...)のような、Hibernate 3でdeprecatedになったメソッドも同じ問題を抱えているらしい。

追記2: http://www.owasp.org/documentation/guide/guide_downloads.html から、OWASP Guide to Building Secure Web Applicationsがダウンロードできます。