Title: Add defensive class validation during deserialization by yannaingtun · Pull Request #85 · squirrel-sql-client/squirrel-sql-code · GitHub
Open Graph Title: Add defensive class validation during deserialization by yannaingtun · Pull Request #85 · squirrel-sql-client/squirrel-sql-code
X Title: Add defensive class validation during deserialization by yannaingtun · Pull Request #85 · squirrel-sql-client/squirrel-sql-code
Description: This change adds a defensive safeguard to the deserialization logic in Utilities.cloneObject(). Previously, the custom ObjectInputStream.resolveClass() method loaded classes using Class.forName() without validating that the resolved class matched the expected object type. If untrusted or malformed serialized data were ever passed to this code path, this could allow unexpected classes to be resolved during deserialization. The updated implementation verifies that the resolved class is compatible with the original object’s class and rejects incompatible classes early. This keeps the existing behavior for valid use cases while adding an extra layer of safety.
Open Graph Description: This change adds a defensive safeguard to the deserialization logic in Utilities.cloneObject(). Previously, the custom ObjectInputStream.resolveClass() method loaded classes using Class.forName() w...
X Description: This change adds a defensive safeguard to the deserialization logic in Utilities.cloneObject(). Previously, the custom ObjectInputStream.resolveClass() method loaded classes using Class.forName() w...
Opengraph URL: https://github.com/squirrel-sql-client/squirrel-sql-code/pull/85
X: @github
Domain: patch-diff.githubusercontent.com
| route-pattern | /:user_id/:repository/pull/:id/files(.:format) |
| route-controller | pull_requests |
| route-action | files |
| fetch-nonce | v2:7e640d1f-c8a7-519f-c373-0fad2ddda04c |
| current-catalog-service-hash | ae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b |
| request-id | D9B0:38EDB5:2177:26CA:697F32C5 |
| html-safe-nonce | 023358afcc9dc4972aa5522eb917badc9490a874db98635583f23ddf71e5498d |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJEOUIwOjM4RURCNToyMTc3OjI2Q0E6Njk3RjMyQzUiLCJ2aXNpdG9yX2lkIjoiNzk0MjgyMzU1MzU5MjY2ODg2OSIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | 0d2e9a8679d408383353668d11d4c0139786e34eed3caadf46b05aca8916e731 |
| hovercard-subject-tag | pull_request:3124916388 |
| github-keyboard-shortcuts | repository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/squirrel-sql-client/squirrel-sql-code/pull/85/files |
| twitter:image | https://avatars.githubusercontent.com/u/7442296?s=400&v=4 |
| twitter:card | summary_large_image |
| og:image | https://avatars.githubusercontent.com/u/7442296?s=400&v=4 |
| og:image:alt | This change adds a defensive safeguard to the deserialization logic in Utilities.cloneObject(). Previously, the custom ObjectInputStream.resolveClass() method loaded classes using Class.forName() w... |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | 60279d4097367e16897439d16d6bbe4180663db828c666eeed2656988ffe59f6 |
| turbo-cache-control | no-preview |
| diff-view | unified |
| go-import | github.com/squirrel-sql-client/squirrel-sql-code git https://github.com/squirrel-sql-client/squirrel-sql-code.git |
| octolytics-dimension-user_id | 108697363 |
| octolytics-dimension-user_login | squirrel-sql-client |
| octolytics-dimension-repository_id | 510507055 |
| octolytics-dimension-repository_nwo | squirrel-sql-client/squirrel-sql-code |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 510507055 |
| octolytics-dimension-repository_network_root_nwo | squirrel-sql-client/squirrel-sql-code |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | true |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 7c85641c598ad130c74f7bcc27f58575cac69551 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width