Commit b66757b
authored
stop config realm leaking to a cross-origin redirect target (#2224)
Cross-origin and https-to-http redirects strip the request realm, but
exitAfterIntercept re-derived it from config.getRealm(), reattaching a
client-wide realm to the redirect target:
- the target answers 401 and then receives the configured credentials,
leaking them to a different origin
- Redirect30xInterceptor already clears future.getRealm() on the strip,
so read the realm from the future instead of falling back to config
Added a cross-origin 401 case to RedirectCredentialSecurityTest that
fails without the change.1 parent 463e578 commit b66757b
2 files changed
Lines changed: 48 additions & 1 deletion
File tree
- client/src
- main/java/org/asynchttpclient/netty/handler/intercept
- test/java/org/asynchttpclient
Lines changed: 6 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
87 | 87 | | |
88 | 88 | | |
89 | 89 | | |
90 | | - | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
91 | 96 | | |
92 | 97 | | |
93 | 98 | | |
| |||
Lines changed: 42 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
70 | 70 | | |
71 | 71 | | |
72 | 72 | | |
| 73 | + | |
73 | 74 | | |
74 | 75 | | |
75 | 76 | | |
| |||
194 | 195 | | |
195 | 196 | | |
196 | 197 | | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
197 | 216 | | |
198 | 217 | | |
199 | 218 | | |
| |||
700 | 719 | | |
701 | 720 | | |
702 | 721 | | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
| 727 | + | |
| 728 | + | |
| 729 | + | |
| 730 | + | |
| 731 | + | |
| 732 | + | |
| 733 | + | |
| 734 | + | |
| 735 | + | |
| 736 | + | |
| 737 | + | |
| 738 | + | |
| 739 | + | |
| 740 | + | |
| 741 | + | |
| 742 | + | |
| 743 | + | |
| 744 | + | |
703 | 745 | | |
704 | 746 | | |
705 | 747 | | |
| |||
0 commit comments