
Research
Two Malicious Rust Crates Impersonate Popular Logger to Steal Wallet Keys
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
Parse SSA/ASS subtitle format.
For the ASS subtitle below (from the Wikipedia page)
[Script Info]
; This is a Sub Station Alpha v4 script.
; For Sub Station Alpha info and downloads,
; go to http://www.eswat.demon.co.uk/
Title: Neon Genesis Evangelion - Episode 26 (neutral Spanish)
Original Script: RoRo
Script Updated By: version 2.8.01
ScriptType: v4.00
Collisions: Normal
PlayResY: 600
PlayDepth: 0
Timer: 100,0000
[V4 Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: DefaultVCD, Arial,28,11861244,11861244,11861244,-2147483640,-1,0,1,1,2,2,30,30,30,0,0
[Events]
Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: Marked=0,0:00:01.18,0:00:06.85,DefaultVCD, NTP,0000,0000,0000,,{\pos(400,570)}Like an angel with pity on nobody
assParser(text, { comments: true })
returns the following:
[
{
"section": "Script Info",
"body": [
{
"type": "comment",
"value": " This is a Sub Station Alpha v4 script."
},
{
"type": "comment",
"value": " For Sub Station Alpha info and downloads,"
},
{
"type": "comment",
"value": " go to http://www.eswat.demon.co.uk/"
},
{
"key": "Title",
"value": "Neon Genesis Evangelion - Episode 26 (neutral Spanish)"
},
{
"key": "Original Script",
"value": "RoRo"
},
{
"key": "Script Updated By",
"value": "version 2.8.01"
},
{
"key": "ScriptType",
"value": "v4.00"
},
{
"key": "Collisions",
"value": "Normal"
},
{
"key": "PlayResY",
"value": "600"
},
{
"key": "PlayDepth",
"value": "0"
},
{
"key": "Timer",
"value": "100,0000"
}
]
},
{
"section": "V4 Styles",
"body": [
{
"key": "Format",
"value": [
"Name",
"Fontname",
"Fontsize",
"PrimaryColour",
"SecondaryColour",
"TertiaryColour",
"BackColour",
"Bold",
"Italic",
"BorderStyle",
"Outline",
"Shadow",
"Alignment",
"MarginL",
"MarginR",
"MarginV",
"AlphaLevel",
"Encoding"
]
},
{
"key": "Style",
"value": {
"Name": "DefaultVCD",
"Fontname": "Arial",
"Fontsize": "28",
"PrimaryColour": "11861244",
"SecondaryColour": "11861244",
"TertiaryColour": "11861244",
"BackColour": "-2147483640",
"Bold": "-1",
"Italic": "0",
"BorderStyle": "1",
"Outline": "1",
"Shadow": "2",
"Alignment": "2",
"MarginL": "30",
"MarginR": "30",
"MarginV": "30",
"AlphaLevel": "0",
"Encoding": "0"
}
}
]
},
{
"section": "Events",
"body": [
{
"key": "Format",
"value": [
"Marked",
"Start",
"End",
"Style",
"Name",
"MarginL",
"MarginR",
"MarginV",
"Effect",
"Text"
]
},
{
"key": "Dialogue",
"value": {
"Marked": "Marked=0",
"Start": "0:00:01.18",
"End": "0:00:06.85",
"Style": "DefaultVCD",
"Name": "NTP",
"MarginL": "0000",
"MarginR": "0000",
"MarginV": "0000",
"Effect": "",
"Text": "{\\pos(400,570)}Like an angel with pity on nobody"
}
}
]
}
]
assParser(text, [options])
Returns the parse tree.
Comments are ignored unless options.comments
is set.
Option | Type | Required? | Default |
---|---|---|---|
comments | boolean | No | false |
Subtitle is a list of sections, each of them has section
and body
properties. The body
is a list of key-value bindings (descriptors), with key
and value
properties (type == 'comment'
and value
for comments).
value
can be one of the following:
"Format"
;"Format"
descriptor above in the section;npm install ass-parser
MIT
FAQs
Parse SSA/ASS subtitle format
We found that ass-parser demonstrated a not healthy version release cadence and project activity because the last version was released 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.
Research
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
Research
A malicious package uses a QR code as steganography in an innovative technique.
Research
/Security News
Socket identified 80 fake candidates targeting engineering roles, including suspected North Korean operators, exposing the new reality of hiring as a security function.