OpenVSX Registry Verified

REST Studio — REST & API Client, HTTP Requests & API Testing

2367c704-bbb9-5307-bb5e-8f8d5e8d0b0d | v0.1.4
53/ 100
MEDIUM risk
No change since v0.1.2
Analyst verdict
Review before use

The AI review rates the findings as likely false positive, but the risk score (53/100) still counts them.

Analysis record

Analysed
1 weeks ago
Version
v0.1.4
Artifact
SHA256 C8F…BCE
Source
Findings (non-IoC)

Is REST Studio — REST & API Client, HTTP Requests & API Testing safe?

ciro-maciel-rest-studio is a REST and API client for VS Code, Cursor, VSCodium and Windsurf, built as a no-account alternative to Thunder Client and Postman. You keep your API collections as files in your repo and send requests at whatever endpoints you choose. It declares no special permissions. The network addresses attached to it fit that job: schema.getpostman.com to import Postman collections, mantine.dev because the side panel is built on that React library, img.shields.io for the README badges, and api.northwind-goods.com as a sample endpoint for test calls. Two addresses, ciromaciel.click and by-ciromaciel.click, carry the developer's own name.

The one high-severity alert, OBfuscation-UNICODE_HEAVY-extension/out/extension.js-161, points at extension/out/extension.js. That is the compiled bundle of the extension's source. A build file dense with non-ASCII characters usually means minified libraries, embedded icons or translated strings, and reading that as deliberate hiding is a scanner mistake.

Most of the other flagged domains are not domains. Things like body.total, cn.show and qt.group are pieces of code the scanner pulled out of the bundle and read as hostnames. There are no findings for stolen credentials, no malware signatures and no sign of the extension reading secrets like .env or .ssh files. That is why the alerts here do not point to an extension doing something wrong.

Evidence ledger

Ranked by severity · findings with a source location link to the code viewer

41 detail rows

YARA Rule Matches

12 rules
SeverityRuleHitsFilesMetadata
LOWcredential env files 4
out/webview/index.jspackage.jsonout/webview/index.css +1 more
-
LOWpostinstall persistence mechanism 1
package.json
-
LOWLocalStorageShouldNotBeUsed 1
out/webview/index.js
-
LOWpostinstall file download 6
changelog.mdextension.vsixmanifestout/extension.js +3 more
-
LOWSQLInjection 1
out/webview/index.js
-
LOWNoUseWeakRandom 2
out/extension.jsout/webview/index.js
-
LOWpostinstall crypto operations 4
out/extension.jsout/webview/index.jspackage.json +1 more
-
LOWpostinstall file manipulation 5
out/extension.jsout/webview/index.jspackage.json +2 more
-
LOWpostinstall environment access 1
out/webview/index.js
-
LOWpostinstall obfuscation 4
out/extension.jsout/webview/index.jsout/webview/index.css +1 more
-
LOWpostinstall network communication 6
out/extension.jsout/webview/index.jspackage.json +3 more
-
LOWpostinstall system command 4
extension.vsixmanifestout/extension.jsout/webview/index.js +1 more
-

Publisher Evidence

Low

ciro-maciel

Publisher identity, store signals, distribution reach, and warning signals used for context. Treat this as supporting evidence, not a clean bill of health.

65
Noisy-finding weight
x1.00
Publisher domain
No domain
Missing
Store verification signal
Verified publisher
Verified
Extension portfolio
11
Portfolio

12 evidence rows available.

Finding Categories

1
Obfuscation
49
IoC Indicators

YARA Rules Matched

12 rules(39 hits)
credential env files postinstall persistence mechanism LocalStorageShouldNotBeUsed postinstall file download SQLInjection NoUseWeakRandom postinstall crypto operations postinstall file manipulation postinstall environment access postinstall obfuscation postinstall network communication postinstall system command

AI Security Report

AI Security Review

Evidence context: threat category none; evidence quality moderate.

The extension's stated job is a REST/API client for VS Code-family editors: it keeps collections as files in your repo and sends HTTP requests. Filesystem and process access on that basis is expected. No finding here shows the extension reading source files you did not point it at, and no finding shows it spawning a shell.

The one high-severity alert is OBfuscation-UNICODE_HEAVY-extension/out/extension.js-161, raised against extension/out/extension.js line 161. That path is the compiled bundle of the TypeScript source. Heavy non-ASCII character density in a bundle comes from minified library code, embedded UI glyphs and localized strings. Treating a bundled build file as deliberate obfuscation is a known false positive; the source lives on the project's repository.

On credentials, the evidence is quiet. Nothing appears in the secret category, nothing touches .env, .ssh, .git/config or cloud credential files, and the manifest declares no permissions and no host permissions. The broad API-key and environment-variable patterns that fire on any non-trivial JavaScript did not surface a real secret read.

Network endpoints read the way a REST client's endpoints should. schema.getpostman.com is Postman's collection schema, needed to import Postman collections. schemas.openxmlformats.org is the Office Open XML namespace used when handling document formats. mantine.dev is the React component library behind the webview panel. img.shields.io serves the README badges. api.northwind-goods.com is a sample endpoint matching the demo collection a REST client ships for test requests. Several entries are not hosts at all: body.total, btn.icon.sm, cn.show, d6r.kh, kv.no, p8.bo and qt.group are property-access chains and fragments the extractor misread as domains.

Two endpoints do belong to the developer. ciromaciel.click and by-ciromaciel.click match the publisher name ciro-maciel and look like the project site and update host. That is the strongest counterargument to calling this clean. An extension sending workspace contents to a personal domain would be exfiltration. Here nothing pairs a workspace read with those hosts, they sit alongside a demo API and library schemas, and a client that talks to its own site for updates is unremarkable.

The low-severity code-smell matches are the generic Node.js fetch, exec, crypto and API-key rules that fire on any bundled JavaScript, and they carry no behavioral weight. No malware signature, tool-poisoning or manifest-analysis finding appears. The picture is a small, low-download extension whose findings come from bundled build output and hostname-extraction noise, not from observed malicious behavior.

Key Reasons

  • Only high-severity finding is OBfuscation-UNICODE_HEAVY-extension/out/extension.js-161 in compiled build output, a known false positive on bundled code
  • No secret, malware-signature, tool-poisoning or manifest-analysis findings; no .env, .ssh or credential-provider access
  • Network endpoints (schema.getpostman.com, mantine.dev, img.shields.io, api.northwind-goods.com) fit a REST client's Postman import and webview stack
  • Developer domain ciromaciel.click matches publisher name ciro-maciel and is not paired with any workspace read
  • Code-smell and IoC findings are broad Node.js patterns and misparsed property-access chains, not behavioral evidence

False Positive Considerations

  • IoC extractor misread property-access chains (body.total, btn.icon.sm, cn.show, d6r.kh, kv.no, p8.bo, qt.group) as hostnames
  • UNICODE_HEAVY obfuscation rule firing on the compiled out/extension.js bundle
  • Code-smell rules matching generic Node.js fetch/exec/crypto and API-key patterns
  • Bundled webview libraries (Mantine) and demo API endpoint producing expected network strings

Reviewed 2026-10-17; recommended action: suppress false positive; model confidence 82%.

Open VSX version history

Risk trend by version

2 analyzed versions. Each point is the latest successful scan for that version; failed zero-score scans are hidden. Dates are based on first seen by risky plugins.

Selected
53
Change since first
No change
Change from previous
No change
Versions:
First analyzed version
0.1.2
Sep 30, 2026
Risk range
52 to 53
Across analyzed versions
Latest analyzed version
0.1.4
Oct 14, 2026
Selected version
medium
Version
v0.1.4
1 weeks ago
Risk score
53
Findings
90
Change vs previous
0

Pick any point on the chart to explore that version's code below.

About This Extension

Free, lightweight REST & API client for VS Code, Cursor, VSCodium and Windsurf. A Thunder Client and Postman alternative: collections as files in your repo, no account, no request limits, commercial use allowed.

Frequently Asked Questions