Scan Report
18 /100
openclaw-search-pro
Multi-engine search aggregation tool supporting Bing, Sogou, 360, DuckDuckGo, Baidu, and Tavily
A legitimate multi-engine search aggregation tool with minor doc-to-code mismatch in extract.py but no malicious behavior detected.
Safe to install
Approve for use. Document the incomplete extract.py content extraction feature in SKILL.md. Consider pinning axios dependency to avoid potential HTTPoxy risks.
Findings 3 items
| Severity | Finding | Location |
|---|---|---|
| Low | Content extraction feature not implemented Doc Mismatch | scripts/extract.py:105 |
| Low | extract.js output incomplete extraction info Doc Mismatch | scripts/extract.js:144 |
| Info | Non-standard private IP range Supply Chain | scripts/extract.js:22 |
| Resource | Declared | Inferred | Status | Evidence |
|---|---|---|---|---|
| Network | READ | READ | ✓ Aligned | All scripts use requests/axios for HTTP GET/POST to search engines |
| Filesystem | READ | READ | ✓ Aligned | Only reads config/search-config.json for API keys |
| Shell | NONE | NONE | — | No subprocess/os.system calls found |
| Environment | NONE | NONE | — | No os.environ access or credential harvesting |
4 High 69 findings
High IP Address 硬编码 IP 地址
172.31.255.255 scripts/extract.js:18 High IP Address 硬编码 IP 地址
169.254.0.0 scripts/extract.js:22 High IP Address 硬编码 IP 地址
169.254.255.255 scripts/extract.js:22 High IP Address 硬编码 IP 地址
120.0.0.0 scripts/extract.js:122 Medium External URL 外部 URL
https://ai.baidu.com/tech/search BAIDU-API-GUIDE.md:7 Medium External URL 外部 URL
https://console.bce.baidu.com/ BAIDU-API-GUIDE.md:106 Medium External URL 外部 URL
https://ai.baidu.com/ai-doc/SEARCH BAIDU-API-GUIDE.md:107 Medium External URL 外部 URL
https://www.microsoft.com/en-us/bing/apis/bing-web-search-api README.md:183 Medium External URL 外部 URL
https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz package-lock.json:26 Medium External URL 外部 URL
https://registry.npmmirror.com/axios/-/axios-1.13.6.tgz package-lock.json:32 Medium External URL 外部 URL
https://registry.npmmirror.com/boolbase/-/boolbase-1.0.0.tgz package-lock.json:43 Medium External URL 外部 URL
https://registry.npmmirror.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz package-lock.json:49 Medium External URL 外部 URL
https://registry.npmmirror.com/cheerio/-/cheerio-1.2.0.tgz package-lock.json:62 Medium External URL 外部 URL
https://registry.npmmirror.com/cheerio-select/-/cheerio-select-2.1.0.tgz package-lock.json:87 Medium External URL 外部 URL
https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz package-lock.json:104 Medium External URL 外部 URL
https://registry.npmmirror.com/css-select/-/css-select-5.2.2.tgz package-lock.json:116 Medium External URL 外部 URL
https://registry.npmmirror.com/css-what/-/css-what-6.2.2.tgz package-lock.json:132 Medium External URL 外部 URL
https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz package-lock.json:144 Medium External URL 外部 URL
https://registry.npmmirror.com/dom-serializer/-/dom-serializer-2.0.0.tgz package-lock.json:153 Medium External URL 外部 URL
https://registry.npmmirror.com/domelementtype/-/domelementtype-2.3.0.tgz package-lock.json:167 Medium External URL 外部 URL
https://registry.npmmirror.com/domhandler/-/domhandler-5.0.3.tgz package-lock.json:179 Medium External URL 外部 URL
https://registry.npmmirror.com/domutils/-/domutils-3.2.2.tgz package-lock.json:194 Medium External URL 外部 URL
https://registry.npmmirror.com/dunder-proto/-/dunder-proto-1.0.1.tgz package-lock.json:208 Medium External URL 外部 URL
https://registry.npmmirror.com/encoding-sniffer/-/encoding-sniffer-0.2.1.tgz package-lock.json:222 Medium External URL 外部 URL
https://registry.npmmirror.com/entities/-/entities-4.5.0.tgz package-lock.json:235 Medium External URL 外部 URL
https://registry.npmmirror.com/es-define-property/-/es-define-property-1.0.1.tgz package-lock.json:247 Medium External URL 外部 URL
https://registry.npmmirror.com/es-errors/-/es-errors-1.3.0.tgz package-lock.json:256 Medium External URL 外部 URL
https://registry.npmmirror.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz package-lock.json:265 Medium External URL 外部 URL
https://registry.npmmirror.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz package-lock.json:277 Medium External URL 外部 URL
https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.11.tgz package-lock.json:292 Medium External URL 外部 URL
https://registry.npmmirror.com/form-data/-/form-data-4.0.5.tgz package-lock.json:312 Medium External URL 外部 URL
https://registry.npmmirror.com/function-bind/-/function-bind-1.1.2.tgz package-lock.json:328 Medium External URL 外部 URL
https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz package-lock.json:337 Medium External URL 外部 URL
https://registry.npmmirror.com/get-proto/-/get-proto-1.0.1.tgz package-lock.json:361 Medium External URL 外部 URL
https://registry.npmmirror.com/gopd/-/gopd-1.2.0.tgz package-lock.json:374 Medium External URL 外部 URL
https://registry.npmmirror.com/has-symbols/-/has-symbols-1.1.0.tgz package-lock.json:386 Medium External URL 外部 URL
https://registry.npmmirror.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz package-lock.json:398 Medium External URL 外部 URL
https://registry.npmmirror.com/hasown/-/hasown-2.0.2.tgz package-lock.json:413 Medium External URL 外部 URL
https://registry.npmmirror.com/htmlparser2/-/htmlparser2-10.1.0.tgz package-lock.json:425 Medium External URL 外部 URL
https://registry.npmmirror.com/entities/-/entities-7.0.1.tgz package-lock.json:444 Medium External URL 外部 URL
https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.6.3.tgz package-lock.json:456 Medium External URL 外部 URL
https://registry.npmmirror.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz package-lock.json:468 Medium External URL 外部 URL
https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz package-lock.json:477 Medium External URL 外部 URL
https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz package-lock.json:486 Medium External URL 外部 URL
https://registry.npmmirror.com/nth-check/-/nth-check-2.1.1.tgz package-lock.json:498 Medium External URL 外部 URL
https://registry.npmmirror.com/parse5/-/parse5-7.3.0.tgz package-lock.json:510 Medium External URL 外部 URL
https://registry.npmmirror.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.1.0.tgz package-lock.json:522 Medium External URL 外部 URL
https://registry.npmmirror.com/parse5-parser-stream/-/parse5-parser-stream-7.1.2.tgz package-lock.json:535 Medium External URL 外部 URL
https://registry.npmmirror.com/entities/-/entities-6.0.1.tgz package-lock.json:547 Medium External URL 外部 URL
https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz package-lock.json:559 Medium External URL 外部 URL
https://registry.npmmirror.com/safer-buffer/-/safer-buffer-2.1.2.tgz package-lock.json:565 Medium External URL 外部 URL
https://registry.npmmirror.com/undici/-/undici-7.24.4.tgz package-lock.json:571 Medium External URL 外部 URL
https://registry.npmmirror.com/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz package-lock.json:580 Medium External URL 外部 URL
https://registry.npmmirror.com/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz package-lock.json:592 Medium External URL 外部 URL
https://aip.baidubce.com/oauth/2.0/token scripts/baidu_search.py:30 Medium External URL 外部 URL
https://aip.baidubce.com/rpc/2.0/kg/v1/cognitive/get_sp?sp_id=5006 scripts/baidu_search.py:31 Medium External URL 外部 URL
https://m.baidu.com/s scripts/baidu_search.py:136 Medium External URL 外部 URL
https://html.duckduckgo.com/html/ scripts/custom_search.py:129 Medium External URL 外部 URL
https://api.bing.microsoft.com/v7.0/search scripts/custom_search.py:163 Medium External URL 外部 URL
https://api.tavily.com/search scripts/custom_search.py:215 Medium External URL 外部 URL
https://cn.bing.com/search scripts/fallback_search.py:70 Medium External URL 外部 URL
https://m.sogou.com/web scripts/fallback_search.py:112 Medium External URL 外部 URL
https://www.sogou.com/sogou?query= scripts/fallback_search.py:130 Medium External URL 外部 URL
https://cn.bing.com/search?q=$ scripts/free-search.js:32 Medium External URL 外部 URL
https://www.sogou.com/web?query=$ scripts/free-search.js:68 Medium External URL 外部 URL
https://www.sogou.com scripts/free-search.js:81 Medium External URL 外部 URL
https://www.so.com/s?q=$ scripts/free-search.js:113 Medium External URL 外部 URL
https://m.so.com/s scripts/free_search.py:151 Medium External URL 外部 URL
https://www.so.com/s?q= scripts/free_search.py:166 File Tree
17 files · 91.5 KB · 2942 lines Python 6f · 1161L
JSON 3f · 669L
Markdown 4f · 660L
JavaScript 3f · 449L
Config 1f · 3L
├─
▾
config
│ └─
search-config.json
JSON
├─
▾
scripts
│ ├─
baidu_search.py
Python
│ ├─
custom_search.py
Python
│ ├─
extract.js
JavaScript
│ ├─
extract.py
Python
│ ├─
fallback_search.py
Python
│ ├─
free_search.py
Python
│ ├─
free-search.js
JavaScript
│ ├─
multi-search.js
JavaScript
│ └─
multi-search.py
Python
├─
▾
venv
│ └─
pyvenv.cfg
Config
├─
BAIDU-API-GUIDE.md
Markdown
├─
package-lock.json
JSON
├─
package.json
JSON
├─
README_EN.md
Markdown
├─
README.md
Markdown
└─
SKILL.md
Markdown
Dependencies 3 items
| Package | Version | Source | Known Vulns | Notes |
|---|---|---|---|---|
axios | ^1.6.7 | npm | No | Version spec allows minor updates - stable |
cheerio | ^1.0.0-rc.12 | npm | No | Well-maintained HTML parser |
requests | implicit | pip | No | Standard Python HTTP library, no version pinning in requirements |
Security Positives
✓ No credential theft or API key exfiltration - keys only used locally for search API calls
✓ No shell execution, reverse shells, or RCE vectors detected
✓ SSRF protection implemented with private IP range checks and DNS resolution validation
✓ No base64 encoding, eval(), or obfuscation found
✓ No sensitive file access (no ~/.ssh, ~/.aws, .env reads)
✓ No data exfiltration or C2 communication patterns
✓ Well-documented security considerations in SKILL.md
✓ HTTP requests limited to legitimate search engine domains (Bing, Sogou, 360, DuckDuckGo, Tavily)