File tree 3 files changed +17
-2
lines changed
3 files changed +17
-2
lines changed Original file line number Diff line number Diff line change 1
- v3.9.8 (2022-92-16)
1
+ v3.9.9 (2022-02-24)
2
+ -------------------
3
+ [ fix] Bump parser ECMA version to 2022.
4
+
5
+ v3.9.8 (2022-02-16)
2
6
-------------------
3
7
[ fix] Add function type check for arguments, caller, and callee property check (GeoffRen)
4
8
[ fix] Fix find best extension handler
Original file line number Diff line number Diff line change 13
13
" alcatraz" ,
14
14
" contextify"
15
15
],
16
- "version" : " 3.9.8 " ,
16
+ "version" : " 3.9.9 " ,
17
17
"main" : " index.js" ,
18
18
"sideEffects" : false ,
19
19
"repository" : " github:patriksimek/vm2" ,
Original file line number Diff line number Diff line change 5
5
6
6
const assert = require ( 'assert' ) ;
7
7
const { VM , VMScript} = require ( '..' ) ;
8
+ const { INTERNAL_STATE_NAME } = require ( '../lib/transformer' ) ;
8
9
const NODE_VERSION = parseInt ( process . versions . node . split ( '.' ) [ 0 ] ) ;
9
10
const { inspect} = require ( 'util' ) ;
10
11
@@ -659,6 +660,16 @@ describe('VM', () => {
659
660
` ) ) ;
660
661
} ) ;
661
662
663
+ it ( 'internal state attack' , ( ) => {
664
+ const vm2 = new VM ( ) ;
665
+ assert . throws ( ( ) => vm2 . run ( `${ INTERNAL_STATE_NAME } =1;` ) , / U s e o f i n t e r n a l v m 2 s t a t e v a r i a b l e / ) ;
666
+ assert . throws ( ( ) => vm2 . run ( `const ${ INTERNAL_STATE_NAME } = {};` ) , / U s e o f i n t e r n a l v m 2 s t a t e v a r i a b l e / ) ;
667
+ assert . throws ( ( ) => vm2 . run ( `var ${ INTERNAL_STATE_NAME } = {};` ) , / U s e o f i n t e r n a l v m 2 s t a t e v a r i a b l e / ) ;
668
+ assert . throws ( ( ) => vm2 . run ( `let ${ INTERNAL_STATE_NAME } = {};` ) , / U s e o f i n t e r n a l v m 2 s t a t e v a r i a b l e / ) ;
669
+ assert . throws ( ( ) => vm2 . run ( `class ${ INTERNAL_STATE_NAME } {};` ) , / U s e o f i n t e r n a l v m 2 s t a t e v a r i a b l e / ) ;
670
+ assert . throws ( ( ) => vm2 . run ( `function ${ INTERNAL_STATE_NAME } () {};` ) , / U s e o f i n t e r n a l v m 2 s t a t e v a r i a b l e / ) ;
671
+ } ) ;
672
+
662
673
it ( 'buffer attack' , ( ) => {
663
674
const vm2 = new VM ( ) ;
664
675
You can’t perform that action at this time.
0 commit comments