File tree Expand file tree Collapse file tree 2 files changed +20
-0
lines changed Expand file tree Collapse file tree 2 files changed +20
-0
lines changed Original file line number Diff line number Diff line change @@ -898,4 +898,22 @@ describe('Parse User', () => {
898
898
expect ( user . get ( 'authData' ) . twitter . id ) . toBe ( authData . id ) ;
899
899
expect ( user . get ( 'authData' ) . facebook . id ) . toBe ( 'test' ) ;
900
900
} ) ;
901
+
902
+ it ( 'fix GHSA-wvh7-5p38-2qfc' , async ( ) => {
903
+ Parse . User . enableUnsafeCurrentUser ( ) ;
904
+ const user = new Parse . User ( ) ;
905
+ user . setUsername ( 'username' ) ;
906
+ user . setPassword ( 'password' ) ;
907
+ await user . signUp ( ) ;
908
+
909
+ const path = Parse . Storage . generatePath ( 'currentUser' ) ;
910
+ let userData = Parse . Storage . getItem ( path ) ;
911
+ expect ( JSON . parse ( userData ) . password ) . toBeUndefined ( ) ;
912
+
913
+ user . setPassword ( 'password' ) ;
914
+ await user . save ( null , { useMasterKey : true } ) ;
915
+
916
+ userData = Parse . Storage . getItem ( path ) ;
917
+ expect ( JSON . parse ( userData ) . password ) . toBeUndefined ( ) ;
918
+ } ) ;
901
919
} ) ;
Original file line number Diff line number Diff line change @@ -869,6 +869,8 @@ const DefaultController = {
869
869
updateUserOnDisk ( user ) {
870
870
const path = Storage . generatePath ( CURRENT_USER_KEY ) ;
871
871
const json = user . toJSON ( ) ;
872
+ delete json . password ;
873
+
872
874
json . className = user . constructor . name === ParseUser . name ? '_User' : user . constructor . name ;
873
875
return Storage . setItemAsync (
874
876
path , JSON . stringify ( json )
You can’t perform that action at this time.
0 commit comments