in reply to Re^2: Intercepting compile time blocks like BEGIN {}
in thread Intercepting compile time blocks like BEGIN {}
For instance the filepath could be taken to make a distinction between trusted and new code.
How does that help? Three of the four examples I gave still stand, and you still can't syntax check a module.
And rurban's suggestion to wrap the code into a Safe environment
Safe is considered not safe.
Tell me, PPI can find BEGIN-Blocks like in ''=~('(?{B'.'EGIN{print "owned"}})') ?
It shows as a regex literal, which sounds good to me.
So wouldn't be of much help when searching for evil code, since attackers could use these limitations.
Using PPI removes the need to detect such attacks. The only reason you need to detect the attacks is that your method is susceptible to them.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^4: Intercepting compile time blocks like BEGIN {}
by LanX (Saint) on Aug 09, 2010 at 22:04 UTC | |
by ikegami (Patriarch) on Aug 09, 2010 at 23:13 UTC | |
by LanX (Saint) on Aug 09, 2010 at 23:46 UTC | |
by ikegami (Patriarch) on Aug 10, 2010 at 01:10 UTC |