Skip to content

Commit dacb19d

Browse files
committed
Add enphp bugs to readme
1 parent 1fe4989 commit dacb19d

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

README.md

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,46 @@ php bin/decode.php input.php output.php
2626

2727
Call `bin/decode.php` decode `input.php` and save it to `output.php`.
2828

29+
## About EnPHP Bugs
30+
31+
EnPHP has bugs. The obfuscated files cannot even run properly. You shouldn't ask a decoder to revert a broken file to a normal file.
32+
33+
Here are some known EnPHP bugs. They **WON'T** be fixed.
34+
35+
### Class Static Call
36+
37+
```php
38+
class Foo
39+
{
40+
public static function baz()
41+
{
42+
echo 'baz';
43+
}
44+
}
45+
46+
class Bar extends Foo
47+
{
48+
public function __construct()
49+
{
50+
parent::baz();
51+
}
52+
}
53+
```
54+
55+
class Bar will be obfuscated like this
56+
57+
```php
58+
class Bar extends Foo
59+
{
60+
public function __construct()
61+
{
62+
parent::$GLOBALS[GLOBAL_VAR_KEY][0x0]();
63+
}
64+
}
65+
```
66+
67+
This means `(parent::$GLOBALS)[GLOBAL_VAR_KEY][0x0]();` instead of what we expected `parent::($GLOBALS[GLOBAL_VAR_KEY][0x0])();`.
68+
2969
## License
3070

3171
GNU GENERAL PUBLIC LICENSE Version 3

0 commit comments

Comments
 (0)