Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
= IEEE publication identifiers ("IEEE PubID")
== Purpose
Implements a mechanism to parse and utilize IEEE publication identifers.
== Historic identifier patterns
There are at least two major "pattern series" of identifiers due to historical reasons: old (type I) and new (type II). This implementation attempts to support both types of publication identifier patterns.
== Use cases to support
== Elements of the PubID
=== Publisher
|=== | Name | Abbrev
| Institute of Electrical and Electronics Engineers | IEEE
|===
=== Report number
{number}
- is a set of one or more digits and optional letters
=== Part
{part}
- is a set of digits and optional letters; starts with a digit; if a letter or letters are present then they are in the end; optional
=== Subpart
{subpart}
- is a set of digits and optional letters; optional, many subparts are possible
=== Year
{year}
- is a set of 4 digits; optional
=== Corrigendum & Amendment
{cor}
- is a corrigendum or an amendments with the pattern Cor {cornum}-{year}
or Amd {cornum}:{year}
where {cornum} is a set of digits; optional
== Type I pattern
{publisher}
IEEE{type}
one of the values: Standard
, Std
, Draft
, Draft Standard
, Draft Supplement
^*^{series}
one of the values: ISO/IEC
, ISO/IEC/IEEE
^*^{number}
set of digits optionally prefixed with uppercase letter and optionally suffixed with letter{part}
from 1 to 2 digits prefixed with .
or -
and optionally suffixed with up to 4 letters ^*^{subpart}
1 digit optionally suffixed with a letter ^*^{year}
4 digits prefixed with -
, :
, -
, or breakspace ^*^{edition}
prefix Edition
followed by a reference in brackets or prefix First edition
followed by date in format YYYY-MM-DD
^*^{conform}
prefix Conformance
followed by 2 digits, dash, and 4 digits year ^*^{correction}
prefix Cor
optionally followed by breakspace, or prefix Amd
followed by .
, followed by from 1 to 2 digits, dash and 4 digits year ^*^(*) - optional
An identifier can be composed of 2 other identifiers with breakspace delimiter. Only the first identifier needs to cnatain puplisher, for the secont it's optional
Following RegEx expression parses 100% of identifiers from the type I https://xml2rfc.tools.ietf.org/public/rfc/bibxml-ieee/[dataset]: [source,regex]
== Pasing PubID elements from type II identifiers
To parse PubID elements from the type II pattern identifiers we can use a RegEx expression:
This RegEx expession covers 99% of the identifiers from the type II bibxml-ieee https://xml2rfc.tools.ietf.org/public/rfc/bibxml-ieee-new/[dataset].
== File name generator
For type I identifiers file names are generated by replacing symbols /
, \
, ,
, '
, "
, (
, )
, and breakspace with symbol _
. Sequences of multiple sybols _
should be squized to one symbol.
For type II identifiers it needs to parse PubID elements than join the elements in order:
FAQs
Unknown package
We found that pubid-ieee demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.