Research
Security News
Malicious npm Package Targets Solana Developers and Hijacks Funds
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Appear your terminal programs in your gui!
Docs: current gem, github master, your branch: bundle exec rake doc
Appear is a tool for revealing a given process in your terminal. Given a
process ID, appear
finds the terminal emulator view (be it a window, tab, or
pane) containing that process and shows it to you. Appear understands terminal
multiplexers like tmux
, so if your target process is in a multiplexer
session, appear
will reveal a client connected to that session, or start one
if needed.
This project intends to support all POSIX operating systems eventually, but currently only supports macOS.
Usage: appear [OPTION]... [PID]
Appear PID in your user interface.
Appear will use the current process PID by default.
Options:
-l, --log-file [PATH] log to a file
-v, --verbose tell many tales about how the appear process is going
--record-runs record every executed command as a JSON file in the appear spec folder
--version show version information, then exit
-?, -h, --help show this help, then exit
Exit status:
0 if successfully revealed something,
1 if an exception occurred,
2 if there were no errors, but nothing was revealed.
macOS:
cross-platform:
GNU Screen support is a non-goal. It's time for screen users to switch to tmux.
ruby
>= 1.9.3lsof
commandps
commandpgrep
commandAppear depends only on the Ruby standard library.
Here's how Appear works in a nutshell, given a target_pid
target_pid
, up to pid1. We end up with a
list of ProcessInfos, which have fields {pid, parent_pid, command, name}
lsof
on a /dev/ttys*
device to see what
processes are talking on what ttys to each other, which takes a bunch of
timelsof
in Appear is parallel, so grouped lsof calls are less expensivetarget_pid
is running in, AND to recurse the revealing process with the
tmux client id, to reveal the tmux client.The method documented here is the only part of Appear that should be considered stable.
require 'appear'
# super simple
Appear.appear(pid)
# You may customize logging, if needed, using the Config class
config = Appear::Config.new
# print debug info to STDOUT
config.silent = false
# also write to a log file
config.log_file = '/tmp/my-app-appear.log'
Appear.appear(pid, config)
First, get yourself set up:
gem install bundler
./scripts/setup
or bundle install
Then, submit PRs from feature branches for review:
git checkout -b my-name--my-branch-topic
./scripts/console
for a nice pry session with an instance ready to gobundle exec rake
to run tests and doc coverageFAQs
Unknown package
We found that appear 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
Security News
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Security News
Research
Socket researchers have discovered malicious npm packages targeting crypto developers, stealing credentials and wallet data using spyware delivered through typosquats of popular cryptographic libraries.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.