Project

General

Profile

IMSI Catcher Score » History » Version 5

Philipp, 08/24/2015 05:07 PM

1 1 Alex
h1. IMSI Catcher Score
2
3 3 Philipp
The IMSI catcher heuristic calculates an overall score out of a number of sub-scores. If this overall score exceeds a specified maximum value, an alarm is raised in the app. In the detailed event view the sub-scores are displayed together with the overall score to allow the user to derive more details from an incident. The following sections outline all sub-scores used in SnoopSnitch.
4 1 Alex
5
{{>toc}}
6
7 4 Philipp
h2. A1 - Different LAC/CID for the same ARFCN
8 1 Alex
9
The LAC/CID recently seen on a frequency suddenly changed.
10
11
h4. Rationale
12
13
An IMSI catcher may use the frequency of an existing base station that has a weak signal in the area the catcher operates. To force the mobile into a location update, a LAC different from all neighboring stations is chosen by the IMSI catcher.
14
15
The change of the LAC on a given frequency can be detected. Note, that for resource efficiency, GSM reuses frequency in different geographic areas very frequently. Hence, changes of the LAC/CID for a given frequency are specific to the geographic location of the cell.
16
17
As associating an frequency/LAC/CID combination with a precise location reliably can be challenging, a simpler approach is taken. The frequency and LAC/CID is recorded together with a time stamp. If the same frequency is used with a different LAC/CID within a certain time frame, this is considered an attack.
18
19
h4. False Positives
20
21
Multiple base stations operating on the same frequency may be receivable in the same locations, e.g. in elevated places. Furthermore, an operator may reconfigure the cell to use a different LAC/CID.
22
23 4 Philipp
h2. A2 - Inconsistent LAC
24 1 Alex
25
The LAC of the current base station differs from the LAC of many neighboring cells.
26
27
h4. Rationale
28
29
A mobile will only perform a normal location update when changing to a different area, i.e. a base station with a different LAC. An IMSI catcher needs to force a location update to be able to interact with the phone and derive the desired information. Therefore, it must span a cell with a LAC different to all neighboring cells, but with a much better signal strength than the other cells. For an IMSI catcher announcing realistic neighboring cells, this difference between the LAC of the serving cell and all neighboring cell can be detected.
30
31
h4. False Positives
32
33
Femto cells may or may not announce a LAC different from all their neighboring cells. Their may be other special situations, like in-house cells where this is the case.
34
35 5 Philipp
h2. A4 - Same LAC/CID on different ARFCNs
36 1 Alex
37
A cell is received on different ARFCNs within a short time.
38
39
h4. Rationale
40
41
To avoid leaving traces of a new, non-existent cell, an IMSI catcher may choose to reuse the cell ID and LAC of an existing cell in an area, but using a different frequency. The IMSI catcher must have a location area different from the current serving cell, such that the MS performs a location update once it close enough. The use of the cell ID on different frequencies may be detected by the analysis if system information of the original cell was received earlier.
42
43
h4. False Positives
44
45
A cell may be reconfigured to use a different frequency, but this should happen very rarely.
46
47 5 Philipp
h2. A5 - Lonesome location area
48 1 Alex
49
A cell is the only cell observed in its location area
50
51
h4. Rationale
52
53
A mobile will only perform a normal location update when changing to a different area, i.e. a base station with a different LAC. An IMSI catcher needs to force a location update to be able to interact with the phone and derive the desired information. Therefore, it must span a cell with a LAC different to all neighboring cells, but with a much better signal strength than the other cells. An IMSI catcher creating a new LAC for its fake cell will be the only cell operating in this location area. The lack of system information for other cells of this location area can be detected.
54
55
h4. False Positives
56
57
When traveling at high speeds or in areas with poor coverage the mobile may record system information for only a single cell of location area. 
58
_"Unexpected neighbors also do happen often with subway cells. In some cases the BTS is in a central place, and the RF heads are far away, connected with optical fiber. In these cases cell IDs and LACs are carried over many kilometers into places where they usually do not belong, and often not all neighbors are set correctly, due to restrictions in neighbor list size. I can imagine that such circumstances could trigger a false positive."_ ("source":https://lists.srlabs.de/pipermail/gsmmap/2015-March/001272.html)
59
60 5 Philipp
h2. K1 - No neighboring cells
61 1 Alex
62
The serving cell is not advertising any neighbor cells.
63
64
h4. Rationale
65
66
Active IMSI catchers which record voice and data will try to prevent an MS from transitioning back to a regular cell. For that reason an IMSI catcher might announce no neighboring cells such that the MS will use the cell spawned by the IMSI catcher until its signal level is too low.  Note, that less suspicious options exist for an IMSI catcher to solve that problem. It could announce a normal amount of neighboring cells, but choose frequency not used by any base station in that area.
67
68
h4. False Positives
69
70
Only few regular situations, like small islands with only a single call, are thinkable where no neighboring cells may be announced.
71
72 5 Philipp
h2. K2 - High cell reselect offset
73 1 Alex
74
The cell reselect offset is high.
75
76
h4. Rationale
77
78
The goal of announcing a large CELL RESELECT OFFSET is similar to K1. The CELL RESELECT OFFSET is used to calculate the reselection criterion C2. Together with the path loss criterion parameter C1 it is ”used to ensure that the MS is camped on the cell with which it has the highest probability of successful communication on uplink and downlink.” [GSM 05.08, 6.4] In cases where an IMSI catcher e.g. announces real, available neighboring cells, it might choose to announce a CELL RESELECTION OFFSET that would require the signal quality of any neighboring cell to be impossibly good to consider it as an alternative to the cell spawned by the IMSI catcher. This makes the MS camp on that cell until the desired information has been collected.
79
80
h4. False Positives
81
82
Networks may announce a high CELL RESELECTION OFFSET in areas with poor coverage.
83
84 5 Philipp
h2. C1 - Encryption Downgrade
85 1 Alex
86
After using an encryption algorithm with a cell previously, encryption got downgraded to a weaker algorithm.
87
88
h4. Rationale
89
90
Encryption may be disabled completely (A5/0) or limited to a deliberately weakened algorithm (A5/2) due to legal restrictions in some countries. Furthermore, an operator may not yet have the technical capabilities to use the more secure A5/3 algorithm in all of his cells in favor of the broken A5/1 one.
91
92
If a weaker encryption algorithm is observed for the same cell at a later time, this may be an indication for an attacker forcing the MS into an encryption mode that she can attack (more easily). The most likely situation for an active IMSI catcher is a downgrade to A5/0, i.e. null encryption. A downgrade from A5/3 to A5/1 is expected to be rare, as for an active attacker it is much easier to disable encryption all together instead of cracking A5/1.
93
94
This metric is relevant and applicable only when an existing LAC/CID is reused for an IMSI catcher. This is not very common, though, as IMSI catchers usually create a new cell with different LAC to force the MS into a location update. However, if an encryption downgrade happens, this is a very strong sign for an attack.
95
96
h4. False Positives
97
98
An operator may mis-configure some of its base stations to use a weaker encryption algorithm. In rare cases A5/0 transaction are observed, most likely caused by hardware faults.
99
100 5 Philipp
h2. C2 - CIPHER MODE irregularities
101 1 Alex
102
In the CIPHER MODE COMMAND message from the network no IMEISV was requested and subsequent CIPHER MODE COMPLETE messages are acknowledged with significant delay.
103
104
h4. Rationale
105
106
The absence of an IMEISV makes the CIPHER MODE COMPLETE message – the response to the CIPHER MODE COMMAND message – fully predictable. This enables an IMSI catcher to mount a known-plaintext attack against the crypto algorithm. Consequently, IMSI catchers may
107
direct the mobile to omit the IMSISV in its response.
108
109
When an active IMSI catcher mounts an attack against the A5/1 algorithm it takes a significant amount of time to break the encryption (up to a couple of seconds). During this period, the CIPHER MODE COMPLETE message is retransmitted by the mobile until an acknowledgment is received, assuming a previous message has not reached the base station. Both can be detected, the increase delay and a higher retransmission count.
110
111
h4. False Positives
112
113
Lost CIPHER MODE COMPLETE packets due to bad network reception.
114
115
Not requesting the IMEISV is normal behavior in some networks, as the IMEI may be retrieved through a subsequent IDENTITY REQUEST at any later time.
116
117 5 Philipp
h2. C4 - ID requests during location update
118 1 Alex
119
The network queries identity information (like IMSI and IMEI) after a LOCATION UPDATE REQUEST and then rejects that request.
120
121
h4. Rationale
122
123
This is a fingerprint of an IMSI catcher in identification mode, which ends the transaction as soon as the identity of the MS has been recorded. In a sound network setup, one can assume that an identity request only happens when encryption is in place, i.e. after a CIPHER MODE COMPLETE.
124
125
A mobile has to perform a cell reselection when a LOCATION UPDATE REQUEST has been rejected with a ”location area not allowed”. This may be used by the IMSI catcher to force the MS so select a different cell after the desired information was collected.
126
127
h4. False Positives
128
129
Unknown.
130
131 5 Philipp
h2. C5 - Cipher setting out of average
132 2 Karsten
133
All cells seen by the mobile are recorded in a list, together with the advertised encryption algorithm, to determine if the operator commonly uses encryption or not. A cell that does not encrypt, found on a network that is known to encrypt, is suspicious. (This is related to C1 in which a cell known to encrypt stops encryption.)
134
135 5 Philipp
h2. T1 - Low registration timer
136 1 Alex
137
The initial value of the registration timer T3212 is low.
138
139
h4. Rationale
140
141
The registration timer T3212 controls the interval a mobile performs a periodic LOCATION UPDATE, i.e. one that is performed regularly when the location area of the MS does not change. The T3212 of a mobile is initialized from the time-out value in the Control Channel Description which is broadcast as part of SI3 on the serving cells BCCH. It can be set at a granularity of decihours (6 minutes) and supports a maximum value of 25.5 hours (255 decihours). The value of 0 disables periodic location updates completely.
142
143
An IMSI catcher might broadcast an initialization value for the registration timer that causes the phone to updates its location with the catcher very often, e.g. every 6 minutes. This allows for rather precise presence tracking.
144
145
h4. False Positives
146
147
Common value for T3212 are 1-4 hours. Operators may lower T3212 to e.g. 30 minutes to reallocate subscribers from one MSC/VLR to another for maintenance or upgrade.
148
149 5 Philipp
h2. T3 - Paging without transaction
150 1 Alex
151
The MS is paged without entering a transaction.
152
153
h4. Rationale
154
155
Paging by IMSI and subsequently releasing the transaction without SMS or call data being transmitted may be a pattern of a tracking IMSI catcher trying to detect whether a particular user is in the area of the catcher.
156
157
h4. False Positives
158
159
A similar pattern occurs when a MS is called, but the caller releases the call quickly enough such that the MS is paged, but no ALARM is signaled.
160
161 5 Philipp
h2. T4 - Orphaned traffic channel
162 1 Alex
163
A traffic channel is assigned, but no call control state is entered or text message received for a long time.
164
165
h4. Rationale
166
167
When a traffic channel is assigned, the MS is constantly sending (idle messages) until the channel is released. This constant transmission can be exploited by an IMSI catcher to perform a more accurate localization of the MS.
168
169
h4. False Positives
170
171
Unknown.
172
173 5 Philipp
h2. R1 - Inconsistent neighbor list
174 1 Alex
175
The neighbor list of most neighboring cells does not contain serving cell.
176
177
h4. Rationale
178
179
In a regular network one can assume that the majority of neighboring cells of the current serving cell also announce the current cell as one of their neighboring stations.
180
181
A strategy of an IMSI catcher to prevent an MS that was already connected to register again, is to send a neighbor list over the BCCH that contains only neighboring cells which do not have the frequency of the IMSI catcher in their own neighbor list [EP20000107879, 0027]. When the MS selects one of those neighboring cells, it will not consider the IMSI catcher at least for the next cell reselection.
182
183
h4. False Positives
184
185
Unknown.
186
187 5 Philipp
h2. R2 - High number of paging groups
188 1 Alex
189
The cell is configured in a way that maximizes the number of paging groups.
190
191
h4. Rationale
192
193
When an IMSI catcher uses the technique described in [EP20000107879, 0027] to force the mobile back into a regular network, invalid data is sent on the PCH of the respective paging group of that MS until the MS performs a cell reselection. This has the side effect that any other MS on the same paging group also selects a different cell. Hence, the cell spawned by an IMSI catcher using this technique will try to maximize the number of paging groups in that cell to increase the granularity at which mobiles can be disconnected.
194
195
h4. False Positives
196
197
Unknown.