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.
= Sidekiq::Antidote
:ci-url: https://github.com/ixti/sidekiq-antidote/actions/workflows/ci.yml?query=branch%3Amain :ci-img: https://github.com/ixti/sidekiq-antidote/actions/workflows/ci.yml/badge.svg?branch=main :codecov-url: https://codecov.io/gh/ixti/sidekiq-antidote/tree/main :codecov-img: https://codecov.io/gh/ixti/sidekiq-antidote/graph/badge.svg?token=F5AAMPN35A
{ci-url}[image:{ci-img}[CI]] {codecov-url}[image:{codecov-img}[codecov]]
== Installation
Add this line to your application's Gemfile:
$ bundle add sidekiq-antidote
Or install it yourself as:
$ gem install sidekiq-antidote
== Usage
require "sidekiq" require "sidekiq/antidote"
Sidekiq::Antidote.configure do |config|
When running in forked environment (e.g., Puma web server), you also need to
call Sidekiq::Antidote.startup
on fork:
=== Web UI
Adding Antidote tab in Sidekiq web UI is as simple as:
=== Middleware(s)
Sidekiq::Antidote
relies on following bundled middlewares:
Sidekiq::Antidote::Middlewares::Client
Sidekiq::Antidote::Middlewares::Server
The middleware is automatically injected when you require sidekiq/antidote
.
In rare cases, when this causes an issue, you can change middleware order manually:
Sidekiq.configure_client do |config|
config.client_middleware do |chain| chain.prepend(Sidekiq::Antidote::Middlewares::Client) end end
Sidekiq.configure_server do |config|
config.client_middleware do |chain| chain.prepend(Sidekiq::Antidote::Middlewares::Client) end
See: https://github.com/sidekiq/sidekiq/blob/main/lib/sidekiq/middleware/chain.rb
== Inhibitors
=== Treatments
When adding antidote you must pick on of the treatments:
skip:: Skip the job (don't enqueue and/or perform) kill:: Kill the job (send to the dead set instead of enqueueing and/or performing)
=== Class Qualifiers
Class qualifier is the job class pattern. It may match the job class or the job class and method name (when used with ActionMailer delayed deliveries):
ExampleJob
Namespaced::ExampleJob
UserMailer#welcome
You can also use pattern matching:
*:: Matches any number of alpha-numeric characters and underscores:
*Job
matches: ExampleJob
, but not Namespaced::ExampleJob
, or UserMailer#welcome
UserMailer#*
matches any method of UserMailer
**::
Matches any number of components:**
mathes any job or mailer methodA::**::Job
matches A::B::Job
, A::B::C::D::CJob
, etc.A**::Job
matches A::Job
, Abc::Job
, A::B::Job
, etc.
{}::
Matches any of the given literal:{A,B,C}Job
matches AJob
, BJob
, and CJob
== Compatibility
This library aims to support and is tested against:
If something doesn't work on one of these versions, it's a bug.
This library may inadvertently work (or seem to work) on other Ruby, Redis, and Sidekiq versions, however support will only be provided for the versions listed above.
If you would like this library to support another Ruby, Redis, or Sidekiq version, you may volunteer to be a maintainer. Being a maintainer entails making sure all tests run and pass on that implementation. When something breaks on your implementation, you will be responsible for providing patches in a timely fashion. If critical issues for a particular implementation exist at the time of a major release, support for that Ruby, Redis, and/or Sidekiq version may be dropped.
== Development
bundle install bundle exec appraisal generate bundle exec appraisal install bundle exec rake
== Contributing
bundle exec rake
)== Acknowledgement
FAQs
Unknown package
We found that sidekiq-antidote 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.