簡體   English   中英

使用javascript從腳本標簽中提取字符串

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM