[英]Extracting JavaScript object from a <script> tag in Python and parsing the json
[英]Extracting Strings from script tag using javascript
如何提取脚本标记中存在的所有字符串。 我想提取每个字符串并查找是否存在任何shellcode。 但是javascript使用多种方法声明字符串,例如,字符串可以是
var y="Some text";
var x1 = "3+4";
eval("\144\157\143\165\155\145\156\164"); //string given in eval();
它可以是级联格式
var x1 = "te ActiveX Co"; var x2 = "ntrol"; var x3 = x1 + x2;
var x4 = "Execu" + x3;
即使使用简单的Javacript代码在eval()或document.write()中定义了字符串,我也如何识别每个字符串。
这是一个非常复杂的问题,没有简单的解决方案。
您可以使用解析器生成器和ECMAScript语言的BNF定义(肯定可以在网上找到它)从目标源代码中提取字符串。
[编辑]由于链接解析器生成器是用JavaScript编写的,并且支持Web浏览器作为平台,因此您可以生成自定义ECMAScript解析器,将其嵌入页面中,并获取所有嵌入式脚本源(例如$('script').map(function(){return $(this).text();})
)。 请注意,您的自定义解析器可以简单地回显已解析的字符串,例如通过console.log(...)
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.