53AI Hub is an open-source AI portal, which enables you to quickly build a operational-level AI portal to launch and operate AI agents, prompts, and AI tools. It supports seamless integration with development platforms like Coze, Dify, FastGPT, RAGFlow.
- capability exposureinferred+35
- recent driftinferred+12
- tool safetyinferred+12
- trust mitigatorsmixed−5
inferredmixed
The A–E grade is our heuristic synthesis — a "review this" prompt, not a verdict. Each factor is tagged by what backs it: attested (a verifiable record), reported (a third party's claim), or inferred (our own heuristic, e.g. permissions). See methodology.
graded 12m ago · see ecosystem CVEs →
- A · 0 → C · 54
no known CVEs for this server.
- highdangerous code
committed secret: committed .env · dynamic exec: eval(), new Function()
analyzed commit 1edb40f · analyzer v17 · 3h ago
skills & prompt files 1
danger signals21
- dynamic code executioneval()53AI-53AIHub-1edb40f/api/static/libs/js/UEditor/dialogs/attachment/attachment.js:739
var json = eval('(' + r.responseText + ')') - dynamic code executioneval()53AI-53AIHub-1edb40f/api/static/libs/js/UEditor/dialogs/background/background.js:272
var json = isJsonp ? r:eval('(' + r.responseText + ')'); - dynamic code executioneval()53AI-53AIHub-1edb40f/api/static/libs/js/UEditor/dialogs/image/image.js:973
var json = isJsonp ? r : eval('(' + r.responseText + ')') - dynamic code executioneval()53AI-53AIHub-1edb40f/api/static/libs/js/UEditor/dialogs/scrawl/scrawl.js:639
responseObj = eval("(" + xhr.responseText + ")"); - dynamic code executionnew Function()53AI-53AIHub-1edb40f/api/static/libs/js/UEditor/dialogs/wordimage/tangram.js:672
callBack[index] = _createFunName(options[funName] || new Function()); - dynamic code executionnew Function()53AI-53AIHub-1edb40f/api/static/libs/js/UEditor/third-party/jquery-1.10.2.js:569
return ( new Function( "return " + data ) )(); - dynamic code executioneval()53AI-53AIHub-1edb40f/api/static/libs/js/UEditor/third-party/video-js/video.dev.js:7025
j = eval('(' + text + ')'); - dynamic code executioneval()53AI-53AIHub-1edb40f/api/static/libs/js/UEditor/third-party/video-js/video.js:122
if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return - dynamic code executioneval()53AI-53AIHub-1edb40f/api/static/libs/js/vditor/dist/js/mathjax/sre/sre_browser.js:46
goog.ASSUME_ES_MODULES_TRANSPILED=!1;goog.TRANSPILE_TO_LANGUAGE="";goog.TRANSPILER="transpile.js";goog.hasBadLetScoping=null;goog.useSafari10Workaround=function(){if(null==goog.hasBadLetScoping){try{v - dynamic code executioneval()53AI-53AIHub-1edb40f/web/console/public/UEditor/dialogs/attachment/attachment.js:739
var json = eval('(' + r.responseText + ')') - dynamic code executioneval()53AI-53AIHub-1edb40f/web/console/public/UEditor/dialogs/background/background.js:272
var json = isJsonp ? r:eval('(' + r.responseText + ')'); - dynamic code executioneval()53AI-53AIHub-1edb40f/web/console/public/UEditor/dialogs/image/image.js:973
var json = isJsonp ? r : eval('(' + r.responseText + ')') - dynamic code executioneval()53AI-53AIHub-1edb40f/web/console/public/UEditor/dialogs/scrawl/scrawl.js:639
responseObj = eval("(" + xhr.responseText + ")"); - dynamic code executionnew Function()53AI-53AIHub-1edb40f/web/console/public/UEditor/dialogs/wordimage/tangram.js:672
callBack[index] = _createFunName(options[funName] || new Function()); - dynamic code executionnew Function()53AI-53AIHub-1edb40f/web/console/public/UEditor/third-party/jquery-1.10.2.js:569
return ( new Function( "return " + data ) )(); - dynamic code executioneval()53AI-53AIHub-1edb40f/web/console/public/UEditor/third-party/video-js/video.dev.js:7023
j = eval('(' + text + ')'); - dynamic code executioneval()53AI-53AIHub-1edb40f/web/console/public/UEditor/third-party/video-js/video.js:122
if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return - committed secretcommitted .env53AI-53AIHub-1edb40f/api/docker/.env:1
env file shipped with populated values - committed secretcommitted .env53AI-53AIHub-1edb40f/docker/.env:1
env file shipped with populated values - committed secretcommitted .env53AI-53AIHub-1edb40f/web/console/.env:1
env file shipped with populated values - committed secretcommitted .env53AI-53AIHub-1edb40f/web/front/.env:1
env file shipped with populated values
- recent drift+12 capability drift →
Heuristic, inferred signals — false positives (legitimately powerful tools, forks, language ports) are expected. Treat each as "review this", not a verdict. See the ecosystem-wide picture on the security hub, or the fleet security of 53AI.