diff --git a/doc/heuristics.md b/doc/heuristics.md index f982811..a9d4149 100644 --- a/doc/heuristics.md +++ b/doc/heuristics.md @@ -21,4 +21,4 @@ Rayhunter includes several analyzers to detect potential IMSI catcher activity. which include 2G/3G frequencies with higher priorities - **Null Cipher**: Tests whether the cell suggests using a null cipher (EEA0) in the RRC layer. - **NAS Null Cipher**: Tests whether the security mode command at the NAS layer suggests using a null cipher (EEA0). This would usually only happen after a UE has successfully authenticated with the MME but still it shouldn't happen at all, this could be indicative of an attack though using SS7 to get key material from the HLR of the UE for a succesful authentication. It could also indicate an IMSI catcher which is connected to the mobile network MME and HLR through cooperation between government and telco. Or it could be a false positive if the telco is intending to use null ciphers (if encryption is illegal or something.) -- **Incomplete SIB**: Tests whether the Sib1 message contains a complete SIB chain (sib3, sib5, etc.) A legitimate SIB1 should contain timing information for at least 2 additional sibs (sib3, 4, and 5 being the most common) but a fake base station will often not bother to send additional SIBs beyond 1 and 2. On its own this might just be a misconfigured base station (though we have only seen it in the wild under suspicious circumstances) but combined with other heuristics such as **ISMI Requested** detection it should be considered a strong indicator of malicious activity. \ No newline at end of file +- **Incomplete SIB**: Tests whether the SIB1 message contains a complete SIB chain (SIB3, SIB5, etc.) A legitimate SIB1 should contain timing information for at least 2 additional sibs (sib3, 4, and 5 being the most common) but a fake base station will often not bother to send additional SIBs beyond 1 and 2. On its own this might just be a misconfigured base station (though we have only seen it in the wild under suspicious circumstances) but combined with other heuristics such as **ISMI Requested** detection it should be considered a strong indicator of malicious activity. \ No newline at end of file diff --git a/lib/src/analysis/incomplete_sib.rs b/lib/src/analysis/incomplete_sib.rs index 44c1101..612f308 100644 --- a/lib/src/analysis/incomplete_sib.rs +++ b/lib/src/analysis/incomplete_sib.rs @@ -2,6 +2,8 @@ use std::borrow::Cow; use telcom_parser::lte_rrc::{BCCH_DL_SCH_MessageType, BCCH_DL_SCH_MessageType_c1}; +use crate::analysis::util::unpack; + use super::analyzer::{Analyzer, Event, EventType, Severity}; use super::information_element::{InformationElement, LteInformationElement}; @@ -50,8 +52,7 @@ impl Analyzer for IncompleteSibAnalyzer { message: format!( "SIB1 scheduling info list was malformed (packet {})", self.packet_num - ) - .to_string(), + ), }); } None