Research
Recent Trends in Malicious Packages Targeting Discord
The Socket research team breaks down a sampling of malicious packages that download and execute files, among other suspicious behaviors, targeting the popular Discord platform.
Readme
Ingest gesturally-structured data into models with multiple export
This package is not even close to usable, and is just a sketch at the moment. If for some reason you see it and would like to work on it with me, feel free to open an issue :)
Even the most disorganized data system has some structure. We want to be able to recover it without demanding that the entire acquisition process be reworked
To do that, we can use a family of specifiers to tell ingest
where to get metadata
from datetime import datetime
from ingesture import Schema, spec
from pydantic import Field
class MyData(Schema):
# parse metadata in a filename
subject_id: str = Field(...,
description="The ID of a subject of course!",
spec = spec.Path('electrophysiology_{subject_id}_*.csv')
)
# parse multiple values at once
date: datetime
experimenter: str
date, experimenter = Field(...,
spec = spec.Path('{date}_{experimenter}_optodata.h5')
)
# from inside a .mat file
other_meta: int = Field(...
spec = spec.Mat(
path='**/notebook.mat', # 2 **s mean we can glob recursively
field = ('nb', 1, 'user') # index recursively through the .mat
)
)
# and so on
Then, parse your schema from a folder
data = MyData.make('/home/lab/my_data')
Or a bunch of them!
data = MyData.make('/home/lab/my_datas/*')
todo
Our data is rarely a single type, often there is a repeatable substructure that is paired with different macro-structures: eg. you have open-ephys data within a directory with behavioral data in one experiment and paired with optical data in another.
Make submodels and recombine them freely...
todo
Once we have data in an abstract model, then we want to be able to export it to multiple formats! To do that we need an interface that describes the basic methods of interacting with that format (eg. .csv files are written differently than hdf5 files) and a mapping from our model fields to locations, attributes, and names in the target format.
class MyData(Schema):
subject_id: str = Field(
spec = ...,
nwb_field = "NWBFile:subject_id"
)
Mapping
object
class NWB_Map(Mapping):
subject_id = 'NWBFile:subject_id'
class MyData(Schema):
subject_id: str = Field(...)
__mapping__ = NWB_Map
FAQs
Ingest gesturally-structured data into models with multiple export
We found that ingesture 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.
Research
The Socket research team breaks down a sampling of malicious packages that download and execute files, among other suspicious behaviors, targeting the popular Discord platform.
Security News
Socket CEO Feross Aboukhadijeh joins a16z partners to discuss how modern, sophisticated supply chain attacks require AI-driven defenses and explore the challenges and solutions in leveraging AI for threat detection early in the development life cycle.
Security News
NIST's new AI Risk Management Framework aims to enhance the security and reliability of generative AI systems and address the unique challenges of malicious AI exploits.