CellularPrivacy / Android-IMSI-Catcher-Detector

AIMSICD • Fight IMSI-Catcher, StingRay and silent SMS!
https://cellularprivacy.github.io/Android-IMSI-Catcher-Detector/
GNU General Public License v3.0
4.65k stars 940 forks source link

Check ARFCN for use from the right provider #72

Closed Gitschubser closed 10 years ago

Gitschubser commented 10 years ago

Add a check if the ARFCN from the serving cell and the neighbouring cells are from the correct provider. For this we need/must collect the data for all providers.

Example for Germany:

User GSM 900 DCS 1800 Number of channels
GSM 900 / DCS 1800
D1 / Telekom 13–49, 81–102, 122–124 587–611 62 / 25
D2 / Vodafone 1–12, 50–80, 103–121 725–751 62 / 27
E1 / E-Plus 975–999 777–863 25 / 87
E2 / O₂ 1000–1023, 0 637–723 25 / 87
Deutsche Bahn 55–974 20 / -

Richard Schwab

Source: Wikipedia

If there is a cellid/neighbouring cell with the arfcn 726 from the provider o2 there could be something not correct.

E3V3A commented 10 years ago

@Gitschubser Hi, thanks for that useful info, but how can we find out what ARFCNs all providers are using? Surely there should be a DB somewhere or something else? (How did you find your list?) Also are these "globally" allocated or would different countries have different policies. Meaning, could there exists a country X that perhaps does not care to allocate ARFCNs at all?

@xLaMbChOpSx Can you add this field to our Cell DB? I guess from the above, that this info should be a text-field consisting of a CSV separated list of values, sometimes a range of values, for each Cell provider. I'm not sure how the DB tables look as of today, so perhaps you can post a Gist entry with the latest DB table layouts?

E3V3A commented 10 years ago

@xLaMbChOpSx Ignore that. Let's not add more stuff to DB before we know we actually need it. Besides the ARFCNs are different (and the whole thing get more complicated) for different network types.

Gitschubser commented 10 years ago

The source from the ARFCN is: http://de.wikipedia.org/wiki/Global_System_for_Mobile_Communications#Verwendete_Frequenzen We can find out what ARFCNs are used if we store this in a database and analyze the data.

E3V3A commented 10 years ago

I don't know why that table is so damn hard to fix. I tried found this: https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet

SecUpwN commented 10 years ago

@E3V3A, already tried to fix the table in the OP multiple times. Seems like GitHub is mocking around, usually the type of table you see in the OP works perfectly, but here it doesn't. That's why I added the "```" markings - that way we can at least read that damn table properly.

Nothing4You commented 10 years ago

You can do

User GSM 900 DCS 1800 Number of channels
GSM 900 / DCS 1800
D1 / Telekom 13–49, 81–102, 122–124 587–611 62 / 25
D2 / Vodafone 1–12, 50–80, 103–121 725–751 62 / 27
E1 / E-Plus 975–999 777–863 25 / 87
E2 / O₂ 1000–1023, 0 637–723 25 / 87
Deutsche Bahn 55–974 20 / -
|      User     |          GSM 900       | DCS 1800 | Number of channels <br/> GSM 900 / DCS 1800     |
|:------------- |:---------------------- |:-------- | ------------------:|
| D1 / Telekom  | 13–49, 81–102, 122–124 | 587–611  | 62 / 25            |
| D2 / Vodafone | 1–12, 50–80, 103–121   | 725–751  | 62 / 27            |
| E1 / E-Plus   | 975–999                | 777–863  | 25 / 87            |
| E2 / O₂       | 1000–1023, 0           | 637–723  | 25 / 87            |
| Deutsche Bahn | 55–974                 |          | 20 / -             |
Nothing4You commented 10 years ago

Actually, I need to correct myself.

I just learned that github also accepts HTML, so with a simple <br/> you can add a linebreak, updated my previous comment.

SecUpwN commented 10 years ago

Perfect. Thank you, @Nothing4You! I've updated the OP. :+1:

andr3jx commented 10 years ago

I suggest to close this issue. Look at this presentation, page 26. It is common practice that IMSI-Catchers use legit ARFCN to force the mobile station to connect.

E3V3A commented 10 years ago

Thank you @andr3jx. Issue closed and marked as invalid.