I have brought up a topic on the Kotlin Slack and want to bring some attention to it here as well. Please excuse the layout of the post, it is mostly what I wrote on Slack where it follows my train of thoughts as I discover things.
There is this plugin to integrate a serial console into IDEA: (Discourse does not let me post link, search for plugin: 8031-serial-port-monitor)
It is one of the several plugins that is published under the Jetbrains branding that does not publish any change-logs, which I had brought up two or three years ago, but still Jetbrains seems to publish different plugins without changelogs. Whelp.
The actual issue I want to raise: This plugin is receiving multiple updates per month, per week and in the recent days even sometimes per day. And even worse: The associated git repository does not have any commits since over a month: ‘https (discourse does not allow me to use many links) ://github.com/JetBrains/intellij-plugins/tree/master/serial-monitor’
This does ring quiet a few security-related bells for me. Before I start bin-diffing and analyzing, does anyone know any possible explanation for this?
I compared the last two versions. Both do not have any notable changes to the plugin itself. But both ship with jssc-2.9.5.jar which does have changes:
(Screenshot showing an added plist to the macosx 64 binary library including ‘video’ and ‘audio’ security roles in the metadata.)
The included osx_64 library does not seem to raise any flags with virustotal: VirusTotal
It is also signed by Jetbrains.
Still, this all raises a lot of flags for me.
The included jssc has the META-INF with pom.xml for version 2.9.5 - which is two years old. Why the dynamic link libraries are changing between updates, is unclear. The java library does ship the dynamic link libraries and those in particular did not change over the last year, even in the master branch.
How is Jetbrains releasing this plugin? Is the stable jssc release re-bundled with updates of the native library constantly and somehow the signing is changed at the same time?
I’d really like some insights to this, this also feels like a security issue.
(the plist might be just a deafult permission list for the apple sandboxing for a more recent build - not nessecarily means that the application gets these permissions. But I am not too familiar with the apple permission system)