Will Greenberg
2080cd7845
web ui: fix issue causing no entries
...
We weren't correctly handling all possible events from the heuristics
list
2025-03-25 16:49:08 -07:00
oopsbagel
9af8e006b0
fix(serial): use tokio's timeout with USB bulk in/out
...
Replace futures_lite::future::block_on (which will block indefinitely) with
tokio::time::timeout to restore the original behaviour of this utility, where
communication over USB interface bulk endpoints times out after 1 second.
2025-03-25 16:46:35 -07:00
oopsbagel
e841e22774
refactor(serial): replace rusb with nusb
...
nusb is a pure Rust library providing the same low level access to USB devices
that rusb/libusb provide.
This commit removes rusb (and thus the dependence on libusb) and replaces it
with nusb in the serial utility.
The only functional change is that nusb does not support timeouts for bulk data
commands. nusb is async. This commit contains a naïve implementation that simply
blocks on bulk reads and writes in send_command().
2025-03-25 16:46:35 -07:00
Will Greenberg
0d9f53f602
Update make.sh
...
reboot the orbic instead of starting up the process again, since rootshell seems to have insufficient privileges to start rayhunter
2025-03-25 16:34:23 -07:00
Will Greenberg
c9dcbbe5d6
daemon: if we fail to parse the QMDL manifest, make a new one
...
If rayhunter doesn't exit cleanly (e.g. during a battery outage), the
QMDL manifest may end up in a corrupted state. If that's the case,
rayhunter should try to recover by creating a new manifest. This'll let
it continue, and will preserve previous recordings, but they won't be
visible through the UI.
2025-03-25 15:36:12 -07:00
Will Greenberg
61d6ff6510
Add an update section
2025-03-25 15:14:54 -07:00
Will Greenberg
e79dc4a8f0
lib: diable null-cipher heuristic due to false positives
...
Due to an upstream hampi bug (https://github.com/ystero-dev/hampi/issues/133 ),
our RRC parser is reporting false-positives for the null cipher
heuristic.
2025-03-25 15:13:36 -07:00
Will Greenberg
6204bc0195
update installer script for macOS Intel
2025-03-24 16:42:58 -07:00
Will Greenberg
65b9843e39
test macOS intel builds
2025-03-24 16:42:58 -07:00
Sashanoraa
d0d01089dd
Fix various clippy warnings
...
This commit fixes various clippy warnings that do not affect the
function of the code and aren't stylistic in nature.
2025-03-24 13:47:20 -07:00
Sashanoraa
9c26e89b24
Modify config load to use serde default
...
This commit refactors the config loading code to no longer require a
separate ConfigFile struct by taking advantage of serde's `default`
attribute. This causes serde to use the Config struct's default value
for that attribute for any missing attributes, which is what the
existing code was doing anyway.
This also fixes several clippy warnings.
Serde docs: https://serde.rs/container-attrs.html#default
2025-03-24 13:47:20 -07:00
Sashanoraa
1f4786db19
Have rootshell print errors and exit 1 if exec fails
...
Previously was ignoring the possible error retuned by exec, this commit
has rootshell print the error if exec returns and have the process exit
with a code of 1 instead of 0.
2025-03-24 13:47:20 -07:00
Kirk Strauser
88f81d86fa
Remove the quarantine bit from the serial command on macOS
2025-03-20 10:49:07 -07:00
oopsbagel
0b3c0de481
fix(lib/util): use better names for runtime metadata
...
- document RuntimeMetadata fields
- rename RayhunterMetadata to RuntimeMetadata
- rename RuntimeMetadata.os to RuntimeMetadata.system_os
- remove unpopulated hardware field
- remove unnecessary duplication of datastructure in analyzer harness
2025-03-19 11:48:54 -07:00
oopsbagel
188e9f436b
fix(qmdl-manifest): store os/arch/hardware in qmdl manifest.toml
...
Do not superfluously prefix these names with rayhunter_, as they describe the
hardware and not the binary.
2025-03-19 11:48:54 -07:00
oopsbagel
f2b5aa2743
feat: show rayhunter version/os/arch in pcap, ndjson, qmdl manifest
...
Create a util mod to provide information about the rayhunter binary and
system.
2025-03-19 11:48:54 -07:00
oopsbagel
b785a7f21c
feat(qmdl): add rayhunter version and os to manifest.toml
2025-03-19 11:48:54 -07:00
oopsbagel
09d35ccec7
feat(pcap): add operating system kernel name and release
...
Display the uname sysname and release as the OS option in the pcap Section
Header Block, falling back on just the std::env::consts::OS name ("linux") in
the case of runtime errors.
Co-authored-by: Nat Budin <natbudin@gmail.com >
2025-03-19 11:48:54 -07:00
oopsbagel
5ae186bc73
feat(pcap): add rayhunter name and version to metadata
...
Add the compile-time name and version to the pcap's Section Header Block
as the shb_userappl option, the canonical place for storing the name of
the application used to create the pcap.[0]
[0] https://ietf-opsawg-wg.github.io/draft-ietf-opsawg-pcap/draft-ietf-opsawg-pcapng.html#section-4.1-10
2025-03-19 11:48:54 -07:00
Inhishonor
c765a40426
Improve grammer.
2025-03-19 09:27:01 -07:00
Inhishonor
93cfbea361
Fix various sentences in README.
2025-03-19 09:27:01 -07:00
Cooper Quintin
8e6bed97b7
Merge branch 'allpoints-132_Merge_OS_variant_install_scripts'
2025-03-18 18:22:33 -07:00
Cooper Quintin
4214b27c0f
fix nits in install.sh and update readme with new instructions
2025-03-18 18:21:43 -07:00
rbomze
f69487853a
minimized the binary size
2025-03-18 17:59:07 -07:00
Jeremy
7eb61748d7
Update readme: Add link to PGP key for contact email address
2025-03-18 17:59:07 -07:00
Will Greenberg
ca4e560e92
Update README.md
2025-03-18 17:59:07 -07:00
Alexis
2ffb1d4620
Update SECURITY.md
...
Just fixing the relative link to this project
2025-03-18 17:59:07 -07:00
Cooper Quintin
77944dd17c
add security file
2025-03-18 17:59:07 -07:00
rbomze
50301076f0
minimized the binary size
2025-03-18 17:37:24 -07:00
Jeremy
21c839678b
Update readme: Add link to PGP key for contact email address
2025-03-17 11:24:19 -07:00
Will Greenberg
332a7ffbd0
Update README.md
2025-03-12 11:56:12 -07:00
Alexis
8d250553b7
Update SECURITY.md
...
Just fixing the relative link to this project
2025-03-11 15:35:47 -07:00
Cooper Quintin
fa897e73fa
add security file
2025-03-11 14:53:28 -07:00
Paul Beltrani
c3494e338f
Merge install scripts into a single, isntall.sh
2025-03-09 22:27:48 -04:00
Cooper Quintin
f9b2cd6a59
add link to code of conduct
2025-03-07 11:40:37 -08:00
Will Greenberg
eb072fb38c
fix various typos
2025-03-07 11:28:29 -08:00
Will Greenberg
91f82fc71d
add curl to apt install list
2025-03-07 11:21:36 -08:00
Will Greenberg
6fda8450dc
a few more FAQ adjustments
2025-03-07 11:21:36 -08:00
Cooper Quintin
bbfe5877fe
More FAQ work
2025-03-07 11:21:36 -08:00
Will Greenberg
75d3740f66
Add FAQ to readme
2025-03-07 11:21:36 -08:00
oopsbagel
94c576fd96
fix(tools): add pycrate dependency to requirements.txt
...
nasparse.py and nasparse_test.py require the pycrate_mobile and
pycrate_core libraries provided by the pycrate package.
This commit adds the required package to requirements.txt.
2025-03-07 11:08:20 -08:00
Cooper Quintin
ee83613757
update readme
v0.2.5
2025-02-27 17:29:48 -08:00
Cooper Quintin
840f8ad8b0
stop before upload in case file is locked from writing by running process
2025-02-10 11:26:27 -08:00
Cooper Quintin
c9ac834ca7
show warnings in web UI
2025-02-10 11:26:27 -08:00
Cooper Quintin
8629aacf6b
switch default to not see trace messages, switch arg from quiet to verbose
2025-02-10 11:26:27 -08:00
Cooper Quintin
a3fd1479f9
rename qmdl path so that downloaded files have a qmdl extension
2025-02-10 11:26:27 -08:00
Cooper Quintin
049c563f02
fix shortcodes on rayhunter_check
2025-02-10 11:26:27 -08:00
Cooper Quintin
a33b5a3418
Update README.md
...
Co-authored-by: Will Greenberg <willg@eff.org >
2025-01-31 17:00:44 -08:00
Cooper Quintin
107ba58296
warn if running install scritps from git tree
2025-01-31 17:00:44 -08:00
Cooper Quintin
d016279172
some tweaks to readme
2025-01-31 17:00:44 -08:00