Description
NHibernate is an object-relational mapper for the .NET framework. A SQL injection vulnerability exists in some types implementing ILiteralType.ObjectToSQLString. Callers of these methods are exposed to the vulnerability, which includes mappings using inheritance with discriminator values; HQL queries referencing a static field of the application; users of the SqlInsertBuilder and SqlUpdateBuilder utilities, calling their AddColumn overload taking a literal value; and any direct use of the ObjectToSQLString methods for building SQL queries on the user side. This vulnerability is fixed in 5.4.9 and 5.5.2.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| nhibernate | nhibernate-core | < 5.4.9, >= 5.5.0, < 5.5.2 | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| NuGet | NHibernate | < 5.4.9 | 5.4.9 | GHSA-fg4q-ccq8-3r5q |
| NuGet | NHibernate | >= 5.5.0, < 5.5.2 | 5.5.2 | GHSA-fg4q-ccq8-3r5q |
References
- https://github.com/nhibernate/nhibernate-core/security/advisories/GHSA-fg4q-ccq8-3r5q
- https://github.com/nhibernate/nhibernate-core/issues/3516
- https://github.com/nhibernate/nhibernate-core/pull/3517
- https://github.com/nhibernate/nhibernate-core/pull/3547
- https://github.com/nhibernate/nhibernate-core/commit/b4a69d1a5ff5744312478d70308329af496e4ba9