2026年浙江省信息通信业职业技能竞赛(信息安全测试员竞赛)初赛Wireup"

admin 2026-10-17 05:31:57 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

2026年浙江省信息通信业职业技能竞赛(信息安全测试员竞赛) 初赛Wireup

赛查查

2026年8月31日 17:41
北京

在小说阅读器读本章

去阅读

在公众号小说中沉浸阅读

以下文章来源于鱼影安全
,作者落寞的鱼

鱼影安全
.

阿里云博客专家%20CSDN博客专家%20网络安全领域优质创作者%20中高职全国职业技能大赛国赛金牌培训讲师%20青年工匠%20多次培训出省赛第一名、国赛二等奖,市赛无数等战绩。第七届全国残疾人职业技能大赛%20网络安全%20赛项%20浙江集训教练等。

点击上方蓝字·关注我们

前言:

夜班刚好赶巧打比赛,还有些题目忙完在复现!

随便记录下大家随便看看就行,最近太忙了!


Web-easy\_js:

某新闻门户网站刚刚上线,听说管理员在开发过程中留下了一些\"方便调试\"的后门,你能找到并获取Flag吗?

页面中存在反调试、禁用右键、禁用快捷键等前端保护,但这些都只是在浏览器端执行,不影响直接查看HTTP响应和下载JS文件

发现文件注释声称使用了%20AES-256-CBC%20+%20Base64

分析后发现代码逻辑:

  1. Base64%20解码

  2. 使用固定%20key%20做%20XOR

  3. eval%20执行解密后的代码

const encrypted%20= atob(encryptedBase64);const key%20= 'ctf_secret_key_32_chars_long_123456';
let decrypted%20= '';for (let i%20= 0;%20i%20<%20encrypted.length;%20i++)%20{  const encryptedChar%20=%20encrypted.charCodeAt(i);  const keyChar%20=%20key.charCodeAt(i%20%%20key.length);  const decryptedChar%20=%20encryptedChar%20^%20keyChar; %20decrypted%20+= String.fromCharCode(decryptedChar);}

因此可以离线解密%20bundle。

const fs%20= require('fs');
const text%20=%20fs.readFileSync('main.bundle.js', 'utf8');const key%20= 'ctf_secret_key_32_chars_long_123456';const match%20=%20text.match(/const\\s+ENCRYPTED_CODE_[A-Z]+\\s*=\\s*'([^']+)'/);
const enc%20= Buffer.from(match[1], 'base64');const out%20= Buffer.alloc(enc.length);
for (let i%20= 0;%20i%20<%20enc.length;%20i++)%20{ %20out[i]%20=%20enc[i]%20^%20key.charCodeAt(i%20%%20key.length);}
console.log(out.toString('utf8'));```

解密结果:

{ %20BASE_URL: \"http://localhost:3000\", %20ENDPOINTS:%20{ %20 %20NEWS: \"/api/news\", %20 %20SEARCH: \"/api/search\", %20 %20ADMIN_LOGIN: \"/api/admin/login\", %20 %20INTERNAL_FLAG: \"/internal/flag\", %20 %20SSRF: \"/secret_admin_panel_x9k2m8n7/api/fetch\" %20}}