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', () => {
898898 expect ( user . get ( 'authData' ) . twitter . id ) . toBe ( authData . id ) ;
899899 expect ( user . get ( 'authData' ) . facebook . id ) . toBe ( 'test' ) ;
900900 } ) ;
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+ } ) ;
901919} ) ;
Original file line number Diff line number Diff line change @@ -869,6 +869,8 @@ const DefaultController = {
869869 updateUserOnDisk ( user ) {
870870 const path = Storage . generatePath ( CURRENT_USER_KEY ) ;
871871 const json = user . toJSON ( ) ;
872+ delete json . password ;
873+
872874 json . className = user . constructor . name === ParseUser . name ? '_User' : user . constructor . name ;
873875 return Storage . setItemAsync (
874876 path , JSON . stringify ( json )
You can’t perform that action at this time.
0 commit comments