Return to Video

Karsten Nohl: Mobile self-defense

  • 0:09 - 0:13
    applause
  • 0:13 - 0:16
    Karsten Nohl: Great to be back. Thank you
    very much, talking once again on mobile
  • 0:16 - 0:21
    security, taking two very different
    angles, though, from what we talked about
  • 0:21 - 0:27
    the last couple of years. This time we want
    to dive into the same topic that Tobias
  • 0:27 - 0:32
    Engel just did, looking at insecurities
    that arise from the interconnect networks
  • 0:32 - 0:38
    between different operators and we want to
    add another angle. And that is how YOU
  • 0:38 - 0:43
    can start self defending yourself from the
    insecurities that many of your operators
  • 0:43 - 0:49
    have left open for many years, including
    the new ones that Tobias and myself talk
  • 0:49 - 0:56
    about. If you do watch this on a download,
    do go back and also watch Tobias's talk,
  • 0:56 - 1:00
    it's well worth it and also covers a lot
    of the basics that I'm just going to skip
  • 1:00 - 1:06
    over now for the sake of time. Great talk,
    by the way. Thank you Tobias. So aside
  • 1:06 - 1:17
    from. applause Aside from those SS7
    based attacks, we want to talk about 3G
  • 1:17 - 1:24
    insecurities, not too many of them, but
    severe as ever, as well as in the last
  • 1:24 - 1:30
    chapter. Then a few tips, as well as a new
    tool to help you start self defending
  • 1:30 - 1:36
    against these mobile attacks. Now, just
    briefly, then, what is the SS7 Network
  • 1:36 - 1:41
    Tobias has already covered the basics. So
    just a quick definition from me. It's this
  • 1:41 - 1:46
    network that different mobile operators
    are connected to, to exchange data among
  • 1:46 - 1:52
    each other. For instance, text messages
    are sent over this network. So without SS7,
  • 1:52 - 1:58
    you couldn't be using this ancient chatting
    technology SMS. Thank you SS7. But also
  • 1:58 - 2:05
    more security relevant information is
    exchanged over SS7. For instance, if you're
  • 2:05 - 2:11
    using your phone in another country, as
    many of you currently do, you still want
  • 2:11 - 2:16
    this visiting network to be able to use
    encryption with your phone, but how is that
  • 2:16 - 2:20
    network going to know the right encryption
    key? So this visiting network, the German
  • 2:20 - 2:24
    network has to ask your home network for
    the correct encryption key and that goes
  • 2:24 - 2:30
    over SS7. And you can already see if
    there's cryptographic information being
  • 2:30 - 2:34
    exchanged, if the wrong people ask and
    still receive an answer, insecurities
  • 2:34 - 2:40
    arise. More interesting from a security
    perspective, though, are messages that are
  • 2:40 - 2:46
    exchanged within one network over SS7.
    So SS7 is often misunderstood as this
  • 2:46 - 2:51
    technology that's used for worldwide
    exchange of information. The same network,
  • 2:51 - 2:55
    though, is used inside an operator. So
    there's no need for interconnect. There's
  • 2:55 - 3:01
    already SS7 flows going on between those
    different mobile switching centers, MSC.
  • 3:01 - 3:08
    And each mobile switching center covers
    one area, let's say a city. So imagine a
  • 3:08 - 3:13
    situation where you are. You're in a call
    and you're traversing from one area to
  • 3:13 - 3:17
    another. You're crossing, let's say, your
    state boundary. So there's new MSC,
  • 3:17 - 3:22
    doesn't know how to handle your call. It
    needs the decryption key for the already
  • 3:22 - 3:29
    ongoing conversation. So there's another
    SS7 message that allows you to query for
  • 3:29 - 3:34
    the key of a transaction that's currently
    going on. OK? And again, you can already
  • 3:34 - 3:39
    see how if the wrong people send this type
    of message and they receive an answer,
  • 3:39 - 3:47
    insecurities arise. The insecurity that
    that has most been talked about in recent
  • 3:47 - 3:53
    years, again, up until Tobias's talk, was
    tracking. And tracking was often understood
  • 3:53 - 3:58
    as: There's this evil message, the any time
    interrogation and The Washington Post
  • 3:58 - 4:02
    focused a lot an article on just one
    message. And it's a it's really evil. It
  • 4:02 - 4:06
    should not been I have been ever
    standardized. And whenever it's used, it's
  • 4:06 - 4:12
    for evil purposes. There's no
    usefulness in this message. And Tobias
  • 4:12 - 4:16
    quoted a number that I think The
    Washington Post found in a lot of
  • 4:16 - 4:22
    marketing material, 70 percent of mobile
    networks respond to this message. Now,
  • 4:22 - 4:26
    this is information from earlier this year.
    A lot of networks, very good news, have
  • 4:26 - 4:33
    moved to to stop responding to anytime
    interrogation message. This evil spying
  • 4:33 - 4:38
    message is not being responded to by, for
    instance, all German networks. You can't
  • 4:38 - 4:44
    use this message in Germany anymore.
    However, this is a very retroactive
  • 4:44 - 4:52
    approach to securing SS7 because there's a
    number of other messages that, consider them
  • 4:52 - 4:57
    Gadgets, get you to the same place, take a
    phone number and take you all the way to
  • 4:57 - 5:03
    somebody's location. And here's just a
    snapshot of of which messages you can use
  • 5:03 - 5:09
    and Tobias went into a greater level of
    detail in how these different messages
  • 5:09 - 5:14
    come together. So if anybody thinks that
    just barring anytime integration, you
  • 5:14 - 5:21
    solved the tracking problem, they are wrong.
    But at the same time, it's not that SS7 is
  • 5:21 - 5:27
    not secureable. It's just a much larger
    challenge that people consider currently
  • 5:27 - 5:34
    to be. So you see how stringing
    together some of these messages get you to
  • 5:34 - 5:39
    intermediate values that also shouldn't be
    public and then all the way to a cell ID.
  • 5:39 - 5:43
    And up until all these messages or at
    least every path that takes you from left
  • 5:43 - 5:50
    to right is blocked by a network, tracking
    to the same accuracy, to cell ID stays
  • 5:50 - 5:55
    possible. Now, this is just one of many
    areas in which SS7 can become an issue.
  • 5:55 - 6:04
    Here is 4 more, it's an intercept risk.
    If people can read your SMS text or listen
  • 6:04 - 6:08
    to your calls, it's a denial of service
    risk. If people cut you off from
  • 6:08 - 6:13
    phone connectivity for anywhere from an
    hour until the next location update or
  • 6:13 - 6:19
    until your next reboot your phone, so you
    can really cut people off badly from it,
  • 6:19 - 6:25
    from the phone network. This area of fraud
    that I don't think many people want to
  • 6:25 - 6:29
    talk about publicly, certainly I don't.
    But there's many fraud risks in SS7
  • 6:29 - 6:34
    in which you can easily put charges
    on somebody else's bill, or more
  • 6:34 - 6:40
    interestingly, you can remove limits on
    your own prepaid cards, basically run up
  • 6:40 - 6:46
    infinite charges on prepaid cards and, you
    know, running up a lot of bills to a two
  • 6:46 - 6:51
    to premium numbers, for instance. And then
    there's the risk of spamming, which from
  • 6:51 - 6:56
    what I hear is already happening, SS7
    based spam attacks. Now, for the sake of
  • 6:56 - 7:02
    this talk, I want to focus on intercept,
    which I consider aside from tracking the
  • 7:02 - 7:06
    most intrusive and the most relevant for
    us, just as a risk, they're more relevant
  • 7:06 - 7:10
    for the network operators. And if they
    don't solve them, well, so be it, as long
  • 7:10 - 7:14
    as they foot the bill for it. So
    intercept. And I want to go into three
  • 7:14 - 7:21
    possible scenarios in which SS7 assisted
    intercept can happen. The first abuses
  • 7:21 - 7:25
    the exact message, as we looked at in the
    introduction, these messages where
  • 7:25 - 7:30
    different parts of networks ask each other
    for encryption information and it's a
  • 7:30 - 7:36
    pretty straightforward attack. You record
    the airwaves. Around somebody in
  • 7:36 - 7:41
    somebody's vicinity and you record
    somebody's encrypted transaction as part of
  • 7:41 - 7:47
    that, right? So and 3G transaction, for
    instance, are pretty well secured, but
  • 7:47 - 7:53
    they're not very hard to record. In fact,
    3G is a little bit easier than 2G because
  • 7:53 - 7:58
    it doesn't jump around all these
    frequencies. So you record, let's say, 3G
  • 7:58 - 8:03
    data and you have a bunch of transactions.
    And all of them encrypted. And you can use
  • 8:03 - 8:10
    this message over SS7 to decrypt them.
    It's called Send ID. And as a as I said on
  • 8:10 - 8:16
    one of the earlier slides, it's supposed
    to be used when you're moving from one MFC
  • 8:16 - 8:21
    into another MSC, but still within your
    own network so that the call doesn't get
  • 8:21 - 8:27
    disrupted. It's not supposed to be used
    when when somebody foreign wants to
  • 8:27 - 8:32
    query your phone, if they need a new
    encryption key, a new call needs to start
  • 8:32 - 8:36
    anyway. There's no way to hand over a call
    from one operator to another operator
  • 8:36 - 8:43
    without disruption. So this message is
    used only for internal purposes. However,
  • 8:43 - 8:48
    out of the four German operator earlier
    this month, all four responded to this
  • 8:48 - 8:52
    request coming from another country,
    another country that doesn't even border
  • 8:52 - 8:57
    Germany. So there's no way to even
    conceptually think a call would be handed
  • 8:57 - 9:04
    over. So four out of four. And that's not
    an anomaly. Most networks require an
  • 9:04 - 9:09
    international response to an
    outside number when asked for the current
  • 9:09 - 9:14
    decryption key. I'll show you a quick demo
    on this at the end of this chapter.
  • 9:14 - 9:18
    But I first finish the enumeration of
    all the different possibilities in which
  • 9:18 - 9:25
    3G calls can be intercepted. The second
    one, the good old IMSI catchers, which we
  • 9:25 - 9:32
    also wouldn't work on 3G. And I guess for
    the most part they don't unless SS7
  • 9:32 - 9:36
    comes to the help. So why don't they
    work without SS7? An IMSI catcher
  • 9:36 - 9:42
    pretends to be a base station. And if
    it's 2G technology, the phone has no way
  • 9:42 - 9:48
    of knowing the difference between the real
    base station and a fake base station. But
  • 9:48 - 9:53
    then 3G, the 3G standard introduced what I
    call mutual authentication. So this time
  • 9:53 - 9:58
    the base station has to prove to a phone
    that in fact it's legitimate and unless it
  • 9:58 - 10:04
    does that, the phone won't connect. Now,
    this only solves part of the IMSI catcher
  • 10:04 - 10:09
    problem. Just taken by the name even the
    catching is still possible, IMSI catching
  • 10:09 - 10:15
    in the sense of creating a list of all the
    IMSIs in a location. Because there's
  • 10:15 - 10:19
    certain chicken and egg problem.
    If you want me as a base station to
  • 10:19 - 10:23
    authenticate to you, you first have to
    tell me who you are. There's no such thing
  • 10:23 - 10:28
    as SSL or any type of public key on the
    mobile network. It's all symmetric key. So
  • 10:28 - 10:33
    you first have to tell me which key to use
    and by that I know who you are. So IMSI
  • 10:33 - 10:37
    catching is always possible. And that's why
    if you Google for 3G IMSI catcher, those
  • 10:37 - 10:43
    things exist. But they aren't capable of
    recording phone calls or SMS because those
  • 10:43 - 10:49
    then required a mutual authentication. They
    aren't capable of doing so unless they ask
  • 10:49 - 10:56
    over SS7 for an authentication key. So
    IMSI catchers are back in the 3G world
  • 10:56 - 11:05
    big time, unless we solve these SS7
    problems, right? The third possibility of
  • 11:05 - 11:11
    of intercept - this is probably the
    scariest because it can happen completely
  • 11:11 - 11:15
    remotely - Boaster once enumerated so far,
    you have to be somewhere in the vicinity
  • 11:15 - 11:20
    in the vicinity of somewhere. So the third
    possibility, I want to call the rerouting
  • 11:20 - 11:25
    attacks and they work in both directions.
    Rerouting is the idea. And to be as
  • 11:25 - 11:31
    touched on this, of taking… of taking
    somebodies phone calls and changing
  • 11:31 - 11:37
    the destination number so that, in fact,
    you call somebody else unbeknownst to you,
  • 11:37 - 11:43
    of course, as the victim. And this will
    expose for incoming calls and outgoing
  • 11:43 - 11:47
    calls, but using very different methods.
    So it just kind of accidentally works in
  • 11:47 - 11:53
    both directions. And this part, I just
    briefly want to demonstrate to BSN that
  • 11:53 - 11:57
    coordinated on most of this. But this
    part, I guess we kind of misunderstood
  • 11:57 - 12:02
    each other as we both showed us. I'll
    keep this very brief. And the point I want
  • 12:02 - 12:08
    to get across is that, one, a single SS7
    message is already a big intercept
  • 12:08 - 12:16
    problem. Let's see. Connected here. Um, so
    I'll try not to make the same mistake as
  • 12:16 - 12:27
    Tobias and try to cut off part of my
    number here. So 31C3 demo phone.
  • 12:27 - 12:33
    So I'm calling a a phone that in fact,
    accidentally we left in. So … fuck
  • 12:33 - 12:36
    Laughter and applause
    Ring-back tone starts
  • 12:36 - 12:40
    So I am calling this number and I don't
    know if you can hear it, but it's ringing.
  • 12:40 - 12:44
    And we did leave his phone back in Berlin
    accidentally. But for the sake of this
  • 12:44 - 12:48
    demo, that makes no difference. So it's a
    it's a phone somewhere in Berlin. Nobody
  • 12:48 - 12:51
    answers to. Here is another phone.
  • 12:51 - 12:52
    Ring-back tone stops
  • 12:52 - 12:54
    So if I if I register what they call a
  • 12:54 - 13:01
    supplementary service to this number. And
    that's just fancy language for, for, for
  • 13:01 - 13:09
    call forwarding, if I call this exact same
    number again.
  • 13:14 - 13:17
    Ring-back tone starts
  • 13:17 - 13:19
    Phone ringing also starts
  • 13:19 - 13:21
    This phone is ringing.
  • 13:21 - 13:24
    Applause
  • 13:24 - 13:26
    Both ring-back and ring-tone stop
  • 13:26 - 13:28
    Still applause
  • 13:28 - 13:33
    Now, of course, to make this real
    intercept, I wouldn't forward it to a
  • 13:33 - 13:38
    phone, I would forward it to a computer
    that then is smart enough to very quickly
  • 13:38 - 13:44
    erase the call forwarding and call the
    original number and then connect it to so
  • 13:44 - 13:48
    that the phone, the phone call actually
    goes to where it was supposed to go. Just
  • 13:48 - 13:53
    I'm sitting in the middle and I'm
    receiving a copy of it. OK, so that's the
  • 13:53 - 13:58
    idea in this direction, in the other
    direction, the exact same thing works as
  • 13:58 - 14:04
    well. And Tobias already told you how
    these services that say, let me rewrite
  • 14:04 - 14:08
    your phone number for you because you
    don't know how to dial a phone number when
  • 14:08 - 14:12
    you're on vacation. Right. Those services
    can be set by anybody, at least on a lot
  • 14:12 - 14:17
    of networks. And you can see how the exact
    same thing works there so that every time
  • 14:17 - 14:21
    you dial a number that just move their own
    number in place of that number and then
  • 14:21 - 14:27
    connect those two calls. So, as I said, I
    consider those to the scariest type of
  • 14:27 - 14:31
    attacks because they were completely
    remotely you don't have to be in the radio
  • 14:31 - 14:35
    vicinity of anybody. And surprisingly,
    this still works against a bunch of
  • 14:35 - 14:42
    networks, even against those networks that
    move to solve some of the earlier issues.
  • 14:42 - 14:49
    So networks [are] still very retroactive.
    So what do what do those mobile networks
  • 14:49 - 14:55
    now have to do to to solve those issues?
    Well, as always, of course, the answer:
  • 14:55 - 15:00
    It depends. It depends in this case on the
    tech type. Some of the techs can simply be
  • 15:00 - 15:06
    blocked. Like the AnytimeInterrogation,
    that earlier this year they said 70% of
  • 15:06 - 15:10
    the networks are vulnerable. Now in
    Germany it's zero. So something happened
  • 15:10 - 15:16
    there. And the same is true for the for
    the first type of attack that I've shown.
  • 15:16 - 15:21
    The passive intercept I said when we
    tested earlier this month for other four
  • 15:21 - 15:27
    networks are vulnerable. Now it's down to
    two. So within two weeks, two networks put
  • 15:27 - 15:34
    in a firewall rule that says this message
    has no purpose. Traversing our outside
  • 15:34 - 15:40
    network boundary, just block it. The
    typical firewall is the same isn't
  • 15:40 - 15:45
    possible for these other two types of
    attacks because those messages are
  • 15:45 - 15:51
    actually useful. They do something, at
    least in certain circumstances. If you
  • 15:51 - 15:55
    block the second type of query here to
    send authentication info, you couldn't be
  • 15:55 - 15:59
    roaming in another country anymore. If you
    blocked a third one, you couldn't be
  • 15:59 - 16:04
    changing your your voice mail forwarding
    from another country anymore. So these are
  • 16:04 - 16:10
    needed. Still we couldn't, we can't accept
    that just anybody who asks over SS7 ...
  • 16:10 - 16:12
    Phone ringing
    Nohl sighs
  • 16:12 - 16:16
    You guys!
    Laughter
  • 16:16 - 16:24
    Switched this off. We can't accept
    that just anybody who asks over SS7
  • 16:24 - 16:29
    receives an answer, at the very least
    we would expect networks to only answer to
  • 16:29 - 16:34
    their friends on SS7, and
    that is their roaming partners. That's
  • 16:34 - 16:39
    already a lot fewer companies and
    especially a lot fewer sketchy companies
  • 16:39 - 16:45
    than everybody else on SS7. We would
    then want those networks to do some
  • 16:45 - 16:51
    plausibility checking. Right. So this does
    phone in Berlin that just put a
  • 16:51 - 16:57
    supplementary service on. The network
    operator knows the phone is in Berlin and
  • 16:57 - 17:03
    I send us from the other end of the world.
    Still, they are not on it. Right. Any type
  • 17:03 - 17:08
    of possibility checking what would clearly
    see that this is not possible for a phone
  • 17:08 - 17:13
    to be in one country and for this user to
    want to change their voicemail setting
  • 17:13 - 17:18
    from somewhere completely different. And
    then thirdly, networks need to limit the
  • 17:18 - 17:22
    rate at which this happens. Those services
    that The Washington Post talked about is
  • 17:22 - 17:26
    tracking services. These are large
    operations. They seem to be tracking
  • 17:26 - 17:34
    thousands of people, constantly. This will
    show in logs, you don't allow some random
  • 17:34 - 17:38
    network somewhere else in the world to
    constantly interrogate hundreds of your
  • 17:38 - 17:44
    users, right? It's clearly abuse. Has any
    network move to put such sensible rules
  • 17:44 - 17:48
    in? I'm not aware of it, but it's
    certainly the next step. And I'm not ready
  • 17:48 - 17:55
    to give up on SS7 yet. I've heard one too
    many times that SS7 is an old technology
  • 17:55 - 18:01
    built with no security in mind and we just
    can't fix it. The Internet also is an old
  • 18:01 - 18:06
    technology built was not secured in mind,
    and we did fix it since the 90s, since
  • 18:06 - 18:11
    when you connected to Windows 95 computer
    to the Internet, it got infected with the
  • 18:11 - 18:17
    virus right away. We have moved to put in
    firewalls. We're not exposing our printer
  • 18:17 - 18:21
    daemon and now file-sharing daemon on the
    entire Internet anymore for four billion
  • 18:21 - 18:26
    people to connect to and the same as
    possible on SS7. Which is, we we're still
  • 18:26 - 18:35
    in the nineties. Thank you.
    Applause
  • 18:35 - 18:38
    Having said that though, let me show you
    what what happens if we don't do that,
  • 18:38 - 18:47
    the fun part. So. We argued whether or not
    we wanted to show this as a live demo.
  • 18:47 - 18:50
    You'll understand why we don't show it as
    a live demo. There is just too much stuff
  • 18:50 - 18:54
    that could go wrong. But here's the setup.
    We start with just a phone number
  • 18:54 - 19:00
    and we want to string together a couple of
    SS7 gadgets while also having this radio
  • 19:00 - 19:05
    handy that can capture 3G information to
    capture yet more information that's not
  • 19:05 - 19:11
    available over SS7. Right. So we start
    with a phone number and we send what's
  • 19:11 - 19:18
    called an SRI-for-SM message, which gives
    us, if the network is configured answer,
  • 19:18 - 19:26
    the IMSI and the MSI that the subscriber
    currently is connected for. Those two are
  • 19:26 - 19:31
    used as parameters into another call.
    Called the PSI message, provide
  • 19:31 - 19:37
    subscriber info. And then that call then
    gives us the Cell ID. This is just how
  • 19:37 - 19:41
    you get more and more information with
    different gadgets. Now the Cell ID tells
  • 19:41 - 19:46
    us where somebody is physically. So imagine
    we now move our radio to that
  • 19:46 - 19:54
    location and we again send a PSI. We record
    the PSI. We set radio, not the PSI, what
  • 19:54 - 20:00
    happens over the airways when we send the
    PSI and the phone gets paged. So when we
  • 20:00 - 20:06
    send the PSI over SS7, the phone receives
    some information. Right. This radio plus a
  • 20:06 - 20:11
    little bit GNU radio scripting gives us
    that information: Who has been paged
  • 20:11 - 20:19
    during that short window of time that we
    that we recorded? Now when we record
  • 20:19 - 20:23
    something on UMTS, we always record for
    different cells – they share frequencies.
  • 20:23 - 20:27
    But you see that the one cell with the
    Cell ID came back over SS7 is included
  • 20:27 - 20:33
    in our set. So we filter the data for
    that cell and we look for which IMSIs are
  • 20:33 - 20:37
    included. And luckily for us, only one
    IMSI got paged within those few
  • 20:37 - 20:43
    seconds on that cell. It's the same. Same.
    This is now the TMSI that belongs to
  • 20:43 - 20:49
    this phone. This is information we can't
    get over SS7. But what you can do over SS7
  • 20:49 - 20:55
    with the TMSI is request a key, so it gets
    complicated. But so we have the decryption
  • 20:55 - 21:00
    key now and the next time this phone
    receives something, unless it changes the
  • 21:00 - 21:04
    key, in which case we can ask again for
    a new key. Next time this phone receives
  • 21:04 - 21:07
    something. And what you don't see in the
    video is, somebody is now sending a text
  • 21:07 - 21:12
    message to the phone. We can also record
    that right. Again, same radio, the one
  • 21:12 - 21:18
    shown in the picture, now the phone that
    received a text message. And there's a few
  • 21:18 - 21:27
    more steps. So the phone received a text
    message and we also, again, recorded the
  • 21:27 - 21:39
    airwaves. We again run it through some GNU
    radio script. Now, was was UMTS
  • 21:39 - 21:43
    everything? It is kind of complicated, so
    there's a different connection, of
  • 21:43 - 21:46
    course, happening all at the same time,
    and then they'll get allocated to
  • 21:46 - 21:50
    different channels. So now, in order to to
    decode this text message, we're going to
  • 21:50 - 21:56
    find out which channel is used. So this
    command gives us the list of which which
  • 21:56 - 22:01
    channels have been allocated. And we got
    to find a TMSI from earlier in one of
  • 22:01 - 22:06
    these channel allocations. And Wireshark
    is a great help in this. We didn't have to
  • 22:06 - 22:11
    do anything with Wireshark. I just knows
    all that 3G stuff right out of the box. So
  • 22:11 - 22:15
    luckily, the first of these five
    connecting requests is the right one and
  • 22:15 - 22:19
    scroll all the way down, there's then the
    parameters that say which channel this
  • 22:19 - 22:24
    transaction happened on. So those two
    numbers, 15 and 48 is the channel. So we,
  • 22:24 - 22:31
    we need to cell frequency, but we need
    those those two two numbers, that, that
  • 22:31 - 22:37
    are the channel and the key, you know,
    this is only 64 bit. I'll discuss that
  • 22:37 - 22:47
    a little later. And that's all we need to
    decrypt an SMS. And there it is.
  • 22:47 - 22:55
    Applause
    Thank you.
  • 22:57 - 23:04
    This still works today, but only against
    two out of the four German networks. Some
  • 23:04 - 23:10
    of them move to to to stop some of these
    messages, of course, most importantly,
  • 23:10 - 23:15
    this SI message that gives you the
    decryption key. But even if you block this
  • 23:15 - 23:23
    message, just acquiring somebody's
    location can already be intrusive enough.
  • 23:23 - 23:27
    All right. Moving on to 3G security or
    rather extending on 3G security since this
  • 23:27 - 23:35
    already touched through 3G in a big way.
    You remember the good old days where where
  • 23:35 - 23:40
    you could just intercept all phone calls
    was the Osmocon phone. Thank you, by the
  • 23:40 - 23:45
    way, for that open source project that
    helped us so much over the years. And you
  • 23:45 - 23:53
    combine that with the kraken software to
    decrypt the phone call. So with 20 year
  • 23:53 - 23:58
    old vers of phone and the server you can
    listen to anybody's GSM calls as long as
  • 23:58 - 24:04
    they're using the A5/1 cipher. Some
    networks recently moved into A5/3.
  • 24:04 - 24:11
    So it doesn't work this way anymore. Now,
    how does this now compare to 3G security?
  • 24:11 - 24:16
    As I've just shown, basically the same
    attacks are possible. Instead of the
  • 24:16 - 24:21
    Osmocom phone, we use a programable radio,
    some more software, but again, very
  • 24:21 - 24:27
    affordable 400 euros or
    something. And you combine that using
  • 24:27 - 24:34
    instead of kraken SS7 queries. So unless
    we fix SS7, 3G is no more secure than 2G
  • 24:34 - 24:41
    and neither is A5/3, the recent
    upgrade of GSM because those keys are
  • 24:41 - 24:50
    again exposed over SS7. Now, some
    networks, you don't even need that second
  • 24:50 - 24:58
    part, so they have bigger things to worry
    about and then SS7 attacks and our data
  • 24:58 - 25:02
    set isn't all that large. Some of you
    provided measurements through through a
  • 25:02 - 25:07
    software release last year. So thank you
    very much for that. And we have captures
  • 25:07 - 25:15
    from maybe 20, 25 countries out of those
    five having to use no 3G encryption at
  • 25:15 - 25:21
    all. Well, four countries. Five network
    operators. Right. Which I find shocking.
  • 25:21 - 25:26
    Some of these even have encryption turned
    on on their GSM network and then forgot to
  • 25:26 - 25:31
    turn it on or deliberately left it out
    because it's harder to intercept on the 3G
  • 25:31 - 25:38
    variant. Right. So those networks, as I
    said, have much more, much more worrisome
  • 25:38 - 25:45
    issues than SS7 attacks. And they really
    need to be called out. And we do that with
  • 25:45 - 25:50
    an extension of a website that we've been
    maintaining for a couple of years, gsmmap,
  • 25:50 - 25:56
    big update of gsmmap launched today
    with all the 3G measurements, we, we
  • 25:56 - 26:02
    collected and you collected over the last
    couple of years. Now, some of you may have
  • 26:02 - 26:08
    used gsmmap before. The idea as to to rank
    operators in the three categories. How
  • 26:08 - 26:14
    hard is it to intercept phone calls and
    SMS? Is it easy to impersonate a person
  • 26:14 - 26:18
    and then put charges on a bill, for
    instance, or receive the calls? How hard
  • 26:18 - 26:23
    is it to track them? And as you see, over
    the last years, networks have improved
  • 26:23 - 26:31
    their security, at least some, as always.
    God. And as you also see, these are the 2G
  • 26:31 - 26:39
    networks, even the best secure 2G network.
    And in Germany anyway, in our opinion, is
  • 26:39 - 26:44
    less secure than the worst secured 3G
    networks. These are for 3G networks, still
  • 26:44 - 26:50
    we want networks to implement all security
    features. And as you saw before, some
  • 26:50 - 26:57
    other countries don't have that luxury of
    all 3G secure networks reasonably secure.
  • 26:57 - 27:02
    Not the first version of our metric is
    very crude and we want to improve upon
  • 27:02 - 27:06
    this over time. But currently how we
    calculate the score is we'll give ninety
  • 27:06 - 27:11
    percent of the points to anybody who
    switches on encryption. That's the main
  • 27:11 - 27:16
    security feature and the remaining 10
    percent you earn by changing the TMSI
  • 27:16 - 27:22
    quickly. TMSI is what we needed for these
    SS7 attacks to work well. So if you keep
  • 27:22 - 27:28
    changing it, it really confuses the that
    the person trying to to haunt you also
  • 27:28 - 27:33
    this makes other types of attacks more
    difficult, will factor in a couple of more
  • 27:33 - 27:39
    values as we collect more data. But this
    is it for now. So, yeah, big update on
  • 27:39 - 27:44
    gsmmap. If you haven't checked it out,
    check out your country on gsmmap, read the
  • 27:44 - 27:52
    country report. So does a six page or so
    report, auto generated, that explains what
  • 27:52 - 27:57
    types of measurements we included into
    into these graphs and why we think they
  • 27:57 - 28:02
    they constitute certain risks. Maybe
    forward it to to your network and say if
  • 28:02 - 28:09
    you're not improving, I'm going to change,
    switch to another network. Now, not
  • 28:09 - 28:14
    everything is on, on gsmmap yet because we
    don't have enough data. And there's one
  • 28:14 - 28:19
    problem in particular that I want to start
    warning about, because I really think
  • 28:19 - 28:24
    we're running into an issue here. And that
    is the lengths of encryption key you saw
  • 28:24 - 28:30
    in the in the capture, in the video data
    that I showed that the key that came back
  • 28:30 - 28:37
    over SS7 was actually only 64bit from this
    particular network. And the SIM card that
  • 28:37 - 28:41
    was there was used in this attack, was
    bought that very same week. So we recorded
  • 28:41 - 28:46
    this video last week. So it's the the most
    recent SIM card you can buy from this
  • 28:46 - 28:51
    network. And still it only uses 64 bit.
    And that, in my view, is incompatible with
  • 28:51 - 28:58
    what we have learned from from recent
    Snowden documents that the NSA in 2011,
  • 28:58 - 29:06
    2012 funded a project to break A5/3.
    This is a 64 bit cipher. And we had
  • 29:06 - 29:10
    estimated at this very conference a year
    ago that you'd need about a million
  • 29:10 - 29:15
    dollars to break A5/3. Now, they
    did it a little bit earlier. So Moore's
  • 29:15 - 29:19
    Law, everything's more expensive and
    probably to have overhead, too. But they
  • 29:19 - 29:25
    spend apparently four billion pounds. I
    don't know why pound, not dollars, but it
  • 29:25 - 29:31
    may have been some GCHQ Corporation. So
    for four million pound a couple of years
  • 29:31 - 29:37
    ago, you could already break 64 bit crypto and
    64 bit is more prevalent in mobile
  • 29:37 - 29:44
    networks than you would have thought when
    they upgraded the GSM networks to A5/3.
  • 29:44 - 29:49
    They didn't actually upgraded it to UMTS
    security, as everybody claimed they did.
  • 29:49 - 29:58
    They upgraded it to the cipher used in
    UMTS with a key half the size. When
  • 29:58 - 30:03
    writing the A5/3 standards though, the
    people were smart enough to also put in
  • 30:03 - 30:11
    the real UMTS cipher with full key size,
    they called it A5/4 and it has never
  • 30:11 - 30:15
    been seen anywhere since. It's written in
    the standard. It was released the same day
  • 30:15 - 30:21
    that A5/3 was released. Nobody has ever
    moved to implement that. So GSM for the
  • 30:21 - 30:26
    time being is and will be vulnerable to
    anybody. It was a one million dollar
  • 30:26 - 30:31
    machine in the basement. Certainly NSA,
    but more and more people as we move
  • 30:31 - 30:35
    forward. And what costs a million dollars
    today, thanks to Moore's Law in a couple
  • 30:35 - 30:41
    of years, anybody can break it on a
    computers like we today. Break the A5/1.
  • 30:41 - 30:46
    If your network uses certain older
    SIM cards, differentiation years between a
  • 30:46 - 30:53
    SIM card and a USIM as a UMTS SIM card.
    If your network only uses SIM cards, then
  • 30:53 - 31:00
    even your 3G transactions are 64 bit
    encrypted. So there is no way to generate
  • 31:00 - 31:03
    more entropy. You could query for two
    keys, I guess, but they weren't smart
  • 31:03 - 31:11
    enough to do that. So 64 bit encryption
    for UMTS and that's just not good enough.
  • 31:11 - 31:15
    And as I said, the network that we did
    the demo with we were surprised to see a
  • 31:15 - 31:21
    64 bit key. We went back in our database
    of SIM cards. We found a lot of SIM cards
  • 31:21 - 31:25
    that have this problem. We want to add
    this to gsmmap, but we don't want to be
  • 31:25 - 31:29
    unfair just because we see one very old SIM
    card in the network. We don't want to give
  • 31:29 - 31:33
    them a low score versus somebody else,
    where we only see a new card. So we need
  • 31:33 - 31:39
    lots and lots of data. Help us collect
    those data and we'll make it public.
  • 31:39 - 31:44
    Now, that's one reason why we stay on this
    ball and progress the research. The other
  • 31:44 - 31:49
    main reason, and this is really what keeps
    us awake at night is this question of
  • 31:49 - 31:57
    how can we get out of the mess. We've been
    producing more and more problems. I should
  • 31:57 - 32:03
    not say produce, we make you aware of more
    and more problems over the years and we
  • 32:03 - 32:07
    always criticize that at least many
    networks do not respond to those. So we
  • 32:07 - 32:12
    have to stockpile ever growing stockpile
    of mobile security issues and nobody seems
  • 32:12 - 32:16
    to be addressing. And all we do is wait
    for our networks to do something
  • 32:16 - 32:21
    eventually. Now waiting's over for me, at
    least I'm impatient. I want to do
  • 32:21 - 32:26
    something now and I want to address all
    these issues all at once. Those issues
  • 32:26 - 32:31
    that we talked about for several years
    now, including the SIM card attacks from
  • 32:31 - 32:40
    last year, silent SMS based tracking the
    SMS, the SS7 abuse discussed today,
  • 32:40 - 32:46
    IMSI Catcher Vulnerabilities and
    insufficiently configured networks, 2G as
  • 32:46 - 32:53
    well as 3G. All of these problems have one
    thing in common. Your phone technically
  • 32:53 - 32:58
    knows that these attacks are happening and
    your phone technically knows that a
  • 32:58 - 33:04
    network is configured insecurely. But
    unfortunately it's buried very deep inside
  • 33:04 - 33:08
    the phone. It's buried inside the
    baseband. So as much as you can program
  • 33:08 - 33:12
    Android, you don't get access to that
    information. At least so we saw it and
  • 33:12 - 33:17
    then we set out and just took the better
    part of this year. We wanted to dig the
  • 33:17 - 33:21
    information out from these phones. It's
    somewhere in there. There must be some way
  • 33:21 - 33:27
    to hack it out of it. And we found debug
    possibilities for Qualcomm chipsets, just
  • 33:27 - 33:31
    one vendor, but extremely popular. Right
    now. There seem to be in every LTE phone
  • 33:31 - 33:37
    and in a bunch of other phones. And we
    found, we found ways of producing exactly
  • 33:37 - 33:43
    all the data on the right hand side to
    make it accessible through an Android
  • 33:43 - 33:48
    application. And we also wrote an
    application for you. So: Release today.
  • 33:48 - 33:58
    Applause
  • 33:58 - 34:05
    Thank you, released today, SnoopSnitch
    under GPL. A tool that collects all the
  • 34:05 - 34:10
    baseband information mostly to keep it
    on the phone and run some analysis on it,
  • 34:10 - 34:15
    warn you about, as I said, SIM card
    attacks, but also those SS7 attacks that
  • 34:15 - 34:20
    Tobias and I talked about today. How do
    you take those those attacks? Well, by the
  • 34:20 - 34:25
    pagings, I showed you in the video
    that every time we send certain queries to
  • 34:25 - 34:30
    the phone, to, over SS7, that the phone
    actually also receives information useful
  • 34:30 - 34:35
    for the attacker. Also useful for the
    defender. If those empty pagings, we call
  • 34:35 - 34:39
    them, are received by the phone, strong
    evidence that somebody is messing with you
  • 34:39 - 34:47
    over SS7. Right. So it collects all that
    information and it produces warnings. You
  • 34:47 - 34:53
    can also upload information issues, so you
    choose. It's optional of course, it runs,
  • 34:53 - 34:57
    as I said, on a bunch of Android phones
    that are currently popular. It requires a
  • 34:57 - 35:02
    somewhat recent Android version we haven't
    tested was Android 5 yet, but I don't
  • 35:02 - 35:05
    see why it wouldn't work, though. We just
    have to put the time and your phone needs
  • 35:05 - 35:11
    to be routed. So we have access to a
    certain interface that otherwise is not
  • 35:11 - 35:16
    accessible. And it needs of course, a
    Qualcomm chipset, which, as you see by
  • 35:16 - 35:22
    this list, is in most current flagship
    phones. It's on Google Play right now. So
  • 35:22 - 35:29
    download it if you're interested. Now, how
    does this tool work? One example only, of
  • 35:29 - 35:34
    course, right, read the source code if you
    if you want to know the rest. If you, for
  • 35:34 - 35:39
    instance, IMSI catcher detection. There
    have been a bunch of tools so far to do
  • 35:39 - 35:44
    IMSI catcher detection. The one we released
    a couple of years ago was called CatcherCatcher,
  • 35:44 - 35:50
    but it had two limitations. One
    practical, one more bound to experience.
  • 35:50 - 35:55
    The practical limitation was that it ran
    on Osmocom phones and Osmocom phones can't
  • 35:55 - 35:59
    do most phone functionality. So always
    your second phone? And it had to be
  • 35:59 - 36:03
    connected to a computer. So very unlikely
    that you carried this around all the time.
  • 36:03 - 36:07
    And we wanted to move it onto a real phone
    that you can use onto your phone. Right? I
  • 36:07 - 36:12
    think we succeeded in that. The second
    limitation was that we really didn't know
  • 36:12 - 36:16
    how IMSI catchers behaved or we also
    didn't know how real networks behaved. And
  • 36:16 - 36:21
    thanks to all the data on gsmmap, we think
    we have a much better understanding now of
  • 36:21 - 36:25
    all the weird corner cases, how real
    networks behave and created a much better
  • 36:25 - 36:33
    ruleset for for an Android based catcher
    catcher tool now. And the rules go in two
  • 36:33 - 36:37
    categories. One is the configuration of
    the of these different cells. For
  • 36:37 - 36:42
    instance, the lack of encryption when, you
    know, from the gsmmap database that this
  • 36:42 - 36:46
    network does usually support encryption,
    that's a big red flag. Also certain other
  • 36:46 - 36:51
    configurations. So that's a configuration
    of the network, the adjusted behavior and
  • 36:51 - 36:54
    the IMSI catcher wants to get
    information out from you at the very
  • 36:54 - 36:58
    least, the IMSI, of course, it's in the
    name. Right. So that suspicious behavior
  • 36:58 - 37:05
    now, none of these things taken by
    themselves did allow you to detect an
  • 37:05 - 37:10
    IMSI catcher. So we compute score over
    these different events, doing stream
  • 37:10 - 37:15
    analysis on everything that happens on
    your phone and eventually then come out
  • 37:15 - 37:21
    with a warning. If the score crosses a
    certain threshold, there's a bunch more we
  • 37:21 - 37:25
    would have wanted to include that's even
    on a Qualcomm chipset in it's debug mode
  • 37:25 - 37:30
    not available. So this is still ongoing work
    as these chipsets progress and may give
  • 37:30 - 37:37
    us more information in the future. Now, if
    you do find alerts, let's call them alarms
  • 37:37 - 37:41
    on your phone. We'd be grateful if you
    could share them. Now, as I said, this is
  • 37:41 - 37:48
    optional, right? You get you get the
    alerts shown in shown in your little tool
  • 37:48 - 37:53
    and then you can choose to upload
    whichever ones you think should be shared
  • 37:53 - 38:00
    if we get enough of them and and think
    that there's really hot spots of of of
  • 38:00 - 38:03
    abuse, of course, we'll try to make that
    transparent, perhaps even put little dots
  • 38:03 - 38:08
    on the GSM website so people know where
    abuse could be happening around
  • 38:08 - 38:20
    demonstrations, around embassies, wherever.
    Applause
  • 38:20 - 38:23
    You can also actively choose to
  • 38:23 - 38:28
    submit data by by running an active test
    now usually the phone looks at everything
  • 38:28 - 38:32
    that you produce, your phone calls, your
    SMS that's always stored on the phone.
  • 38:32 - 38:38
    There's no way to upload that. And you
    compute a score for how secure your
  • 38:38 - 38:42
    network is using the exact same metrics
    that we use on gsmmap. So that's all
  • 38:42 - 38:47
    ported to the phone now. But if you feel
    like the score on gsmmap is heavily outdated,
  • 38:47 - 38:52
    click this button. It runs some benign tests,
    has nothing to do with your transactions. I
  • 38:52 - 38:56
    guess your location where you're currently
    connected would be included in the data
  • 38:56 - 39:02
    and it uploads it to gsmmap. So that
    becomes better and better. And we can spot
  • 39:02 - 39:10
    more networks that, for instance, like any
    encryption at all. Yeah, so what's what
  • 39:10 - 39:15
    what are you what I like you to do, I
    think you should do to better protect
  • 39:15 - 39:20
    yourself from mobile abuse, of course you
    could keep waiting for your mobile
  • 39:20 - 39:25
    networks to fix all these issues, which I
    must say more recently, more networks have
  • 39:25 - 39:30
    moved to fix issues, but still not the
    majority. And no network has even started
  • 39:30 - 39:36
    to address the majority of issues. So it's
    just scratching the surface. So what I'd
  • 39:36 - 39:42
    rather have you do is start defending
    yourself. Check out gsmmap, see if you
  • 39:42 - 39:46
    are on a network that generally protects
    things like encryption. You saw the
  • 39:46 - 39:52
    networks that lack encryption. Don't use
    those. And if you really choose to self
  • 39:52 - 39:58
    defense, download, SnoopSnitch, this new
    tool and actively look out for abuse, for
  • 39:58 - 40:03
    Silent SMS, binary SMS that you receive,
    for empty pagings, for IMSI catcher
  • 40:03 - 40:10
    evidence and help us grow this database of
    abuse. Right. Also help us grow the
  • 40:10 - 40:16
    tool base that we use. This is released
    open source and we put in a lot of work to
  • 40:16 - 40:21
    make the data accessible. But now it is
    accessible, right? Just take it as a
  • 40:21 - 40:27
    library and go wild with it. Do whatever
    you always wanted to do with raw baseband
  • 40:27 - 40:34
    data on 2G, 3G, 4G. I am very much looking
    forward to your contributions to this and
  • 40:34 - 40:38
    all that's left for me to say is thank you
    very much.
  • 40:38 - 40:48
    applause
  • 40:48 - 40:57
    Herald: Thank you, Karsten, then we will
    beginning with the Q&A, please, for
  • 40:57 - 41:04
    everybody that will be asking questions,
    please line up on the microphones in the
  • 41:04 - 41:14
    room and for people that exit the room,
    please do it with no noise and quickly.
  • 41:14 - 41:17
    Karsten: Now, before getting into the
    question, let me give you one reason to
  • 41:17 - 41:23
    actually do leave now. There's a workshop
    happening right now or in a few minutes
  • 41:23 - 41:28
    that will explain how this tool works and
    what it can all do. We'll have an IMSI
  • 41:28 - 41:31
    catcher there a day or so. You can tell us
    how that feels like being connected to an
  • 41:31 - 41:36
    IMSI catcher. It's happening in room C,
    which is when you exit here one floor
  • 41:36 - 41:42
    down and to this end.
    Herald: And additional information, the
  • 41:42 - 41:51
    workshop that's Karsten says start at
    nineteen forty five.
  • 41:51 - 42:00
    K: And now to your questions.
    distant noise
  • 42:00 - 42:05
    K: Sure.
    Herald: OK, microphone number two and
  • 42:05 - 42:10
    please, before before we before you can
    start number two, please do it with no
  • 42:10 - 42:19
    noise that we hear the question from the
    audience. OK, number two, please.
  • 42:19 - 42:23
    Mic 2: Thank you. Can you quickly say a
    few words about why it wouldn't work on
  • 42:23 - 42:28
    custom ROMs? Because we could just install
    it into cyanogen phones and apparently
  • 42:28 - 42:35
    installed and it seems to work.
    K: Oh, OK. So the way I understood custom
  • 42:35 - 42:39
    ROMs is that they first remove a bunch of
    stuff from the phone and then put a bunch
  • 42:39 - 42:44
    of stuff on it. Part of what we need are
    these proprietary Qualcomm libraries and
  • 42:44 - 42:47
    at least on the phones where we tried
    cyanogen mod and what they are being
  • 42:47 - 42:52
    removed. So if cyanogen mod could stop
    doing that, it would work beautifully.
  • 42:52 - 42:56
    It's not that we need anything additional.
    We just need less to be deleted.
  • 42:56 - 43:04
    Mic 2: OK, thank you.
    Herald: OK. Microphone number …, will you
  • 43:04 - 43:10
    ask. OK, are there some questions from the
    IRC?
  • 43:10 - 43:16
    K: I think we have a bunch of questions.
    Signal Angel: Actually, there is five
  • 43:16 - 43:24
    questions, so I will just ask one or two
    for starting. The first one is, can all
  • 43:24 - 43:31
    these shown attacks that you proved on
    your speech be mitigated by… by higher
  • 43:31 - 43:37
    protocols levels, like encrypted VoIP or
    TextSecure, things like that? And what
  • 43:37 - 43:42
    will be the residual risks?
    K: Mm, yeah. A good question. So how much
  • 43:42 - 43:47
    can you protect yourself by using the
    mobile network less on using it as a dumb
  • 43:47 - 43:53
    pipe, I guess is the question, what if you
    use just apps to call and send text? Well,
  • 43:53 - 43:59
    obviously your calls and texts won't be
    intercepted anymore if they are encrypted
  • 43:59 - 44:05
    one more time in a way that's not
    breakable. However, this does not solve
  • 44:05 - 44:09
    the location tracking. It does not solve
    the fraud. It does not solve the denial of
  • 44:09 - 44:14
    service. It does not solve the spamming.
    So you are tied to a mobile network and it
  • 44:14 - 44:18
    has a lot of control over you, your
    location and your phone bill. None of that
  • 44:18 - 44:26
    is going to go away.
    Herald: Another question from the IRC, one.
  • 44:26 - 44:33
    Signal Angel: Yeah, um, the second one is:
    Wouldn't it be easier to design from
  • 44:33 - 44:40
    scratch a new mobile mobile network than
    trying to find all flaws from actual
  • 44:40 - 44:45
    networks, which is an endless task?
    K: Or I don't know where you would even
  • 44:45 - 44:50
    start designing everything from scratch
    completely? The closest that I can think
  • 44:50 - 44:54
    of designing the mobile network from
    scratch is LTE in the name of long term
  • 44:54 - 44:58
    evolution. It really wants to change
    everything, but gives it a couple of years
  • 44:58 - 45:03
    but as Tobias pointed out, those
    issues we pointed out today, they are
  • 45:03 - 45:08
    again included in LTE. Diameter is the
    interconnect protocol. So we already
  • 45:08 - 45:13
    missed a chance to to remove much of this
    issues by just upgrade. We'll have to fix
  • 45:13 - 45:19
    it through firewalls and monitoring like
    we never got to update the Internet.
  • 45:19 - 45:23
    Herald: OK, microphone number four,
    please.
  • 45:23 - 45:28
    Mic 4: Yet just a short thing. Could you
    just provide a list of those libraries
  • 45:28 - 45:36
    you need from the stock images? So I think
    it's pretty easy to copy them to this
  • 45:36 - 45:38
    cyanogen mod images.
    K: Ok
  • 45:38 - 45:41
    Mic 4: OK, and if the app is open source,
  • 45:41 - 45:46
    maybe you can put it on fdroid?
    K: Oh absolutely. Yes. Thank you.
  • 45:46 - 45:51
    applause
    Herald: The microphone number two, please.
  • 45:51 - 45:58
    Mic 2: Got two questions, if I understood
    correctly, you need to be inside the
  • 45:58 - 46:02
    operator network to actually
    perform those SS7 queries, right?
  • 46:02 - 46:08
    K: Um, well, I would I would like for this
    to be the case. But currently, does
  • 46:08 - 46:12
    anybody in the world connected to SS7 can
    send his queries.
  • 46:12 - 46:18
    Mic 2: OK, so my question is that what was
    your hook point for actually doing this
  • 46:18 - 46:21
    test?
    K: I think I'll quote Tobias here by
  • 46:21 - 46:23
    saying I would rather not say anything
    about that.
  • 46:23 - 46:30
    Mic 2: OK, so the second question is about
    the case you mentioned it's if I am not
  • 46:30 - 46:38
    mistaken, is the session key. Right? It's and
    it should involve that nonce value, right?
  • 46:38 - 46:43
    K: Yeah.
    Mic 2: So if it is, it already has the nonce
  • 46:43 - 46:48
    value. So in order the attack to work, we
    also need to intercept the initial
  • 46:48 - 46:55
    messages, the nonce exchange between the
    target and the basis station. Is that
  • 46:55 - 46:59
    correct?
    K: No, the nonce is… as as they are. So
  • 46:59 - 47:06
    the SIM card knows which key to produce.
    Yes. But it helps the phone to find the
  • 47:06 - 47:10
    right encryption key. We are not the
    phone. We don't have the SIM card. Right.
  • 47:10 - 47:13
    If you just give us the encryption key,
    we don't need the nonce.
  • 47:13 - 47:19
    Mic 2: Yes. So what you're saying is that
    the query you're sending there, it
  • 47:19 - 47:26
    actually sends you not only the encryption
    key, but also the nonce that is required..
  • 47:26 - 47:30
    K: It doesn't send us the nonce and we
    don't need the nonce. We can take that
  • 47:30 - 47:32
    offline now, explain how everything works.
    Thank you.
  • 47:32 - 47:36
    Herald: To microphone number three,
    please.
  • 47:36 - 47:41
    Mic 3: First of all, thank you for a very
    good presentation and very impressive work
  • 47:41 - 47:45
    you've done here.
    applause
  • 47:45 - 47:50
    K: Thank you.
    Mic 3: The question I have might be a
  • 47:50 - 47:55
    little naive, but have you also, besides
    taking a look at this closing this whole
  • 47:55 - 48:01
    issue technically wise, also been taking a
    look into how what measures can be taken
  • 48:01 - 48:05
    legally, at least in Germany and some
    countries in Europe now that we have
  • 48:05 - 48:11
    disclosed that basically certain rules /
    laws have not been fulfilled, that we can
  • 48:11 - 48:16
    enforce the operators to implement this
    stuff on legal ways?
  • 48:16 - 48:21
    K: We have not looked into it. Of course,
    we consider the possibility as soon as
  • 48:21 - 48:25
    somebody has an overview of where these
    attacks happen. And that seems to be the
  • 48:25 - 48:31
    issue right now. There's zero attack
    transparency. Nobody is looking for these
  • 48:31 - 48:38
    issues. And partly that's to the to their
    own disbenefit, because as soon as they do
  • 48:38 - 48:43
    look for this issue, some of these attack
    patterns are very easy to stop, as I said,
  • 48:43 - 48:50
    two German networks, mitigated them within
    two weeks. And these issues had been open
  • 48:50 - 48:55
    for 20 years. Had they ever looked into
    their own data, that would have seen this
  • 48:55 - 49:00
    going on. So I'm not very confident that
    anybody in Germany at least has an
  • 49:00 - 49:05
    overview of where abuse would come from.
    And as soon as it does, I don't think
  • 49:05 - 49:10
    there's much point in litigating. Let's
    just stop the possibility of abuse. Right,
  • 49:10 - 49:15
    instead of complaining about it happening.
    But I'm with you. If there's corner cases
  • 49:15 - 49:20
    in which abuse just can't be stopped,
    let's fight it legally, of course. Right.
  • 49:20 - 49:25
    And if all of you contribute information
    through SnoopSearch, does the empty
  • 49:25 - 49:30
    pagings, if we can find patterns of
    abuse, of course, we'll aggregate them and
  • 49:30 - 49:37
    try to move against them.
    Herald: OK, microphone number four,
  • 49:37 - 49:41
    please.
    Mic 4: You said you can buy your way into
  • 49:41 - 49:47
    the SS7 Network, but how easy is it
    actually to get your access? And what do
  • 49:47 - 49:51
    you estimate: How many players are
    there in the network? Can you give any
  • 49:51 - 49:54
    estimation?
    K: I have absolutely no idea. I know that
  • 49:54 - 50:02
    there's some 800 companies who who are
    legally allowed to access SS7 and then
  • 50:02 - 50:07
    those, of course, have subcontractors,
    legal and illegal, and some people who
  • 50:07 - 50:11
    bribe them. Yet other people who hack
    their systems or the systems of the
  • 50:11 - 50:15
    subcontractors, it's very hard to
    estimate. No idea. But definitely too many
  • 50:15 - 50:19
    to trust all of them.
    Mic 4: And would it be possible for me to
  • 50:19 - 50:26
    get access to this without any operator
    stuff or. I don't want to operate a phone
  • 50:26 - 50:31
    network, but I want to have access because
    I want to provide a service, some service?
  • 50:31 - 50:36
    K: Well, I wish the answer was no, but of
    course, right of to be as an I and a bunch
  • 50:36 - 50:41
    of other people can get access. You should
    be able to get that too. But I'm not going
  • 50:41 - 50:45
    to tell you how.
    laughter and applause
  • 50:45 - 50:52
    Herald: Yet another question from the IRC.
    Signal Angel: We're about nine questions,
  • 50:52 - 50:58
    so no problem for me. First one, what
    about Windows phones, jail breaked
  • 50:58 - 51:05
    iPhones, or something like this will the
    app in the end [be] on this phones?
  • 51:05 - 51:11
    K: Our app doesn't run on anything other
    than Android, but the chipsets are, of
  • 51:11 - 51:17
    course, the same. So if you can speak to a
    chipset through a jail broken iPhone, for
  • 51:17 - 51:22
    instance, you could create a similar
    application. We just wanted to target the
  • 51:22 - 51:26
    biggest population of phones, and that
    seems to be Android phones.
  • 51:26 - 51:33
    Herald: Then number two, please.
    Mic 2: One further thought on self-defense
  • 51:33 - 51:41
    as self-defense has don't has to be
    proportionate, I think, and identities are
  • 51:41 - 51:47
    not secure in the digital sphere. How
    about developing some proactive, as we
  • 51:47 - 51:53
    heard the word defense tools?
    K: Proactive as in hack the networks,
  • 51:53 - 51:59
    until they have no chance but to fix?
    Mic 2: That's what you understood, but.
  • 51:59 - 52:03
    But, I support that. laughter
    K: I'm not going to say that I dislike the
  • 52:03 - 52:08
    idea. But you won't see me here next year
    explaining how I did it.
  • 52:08 - 52:12
    Mic 2: Thank you.
    Herald: Microphone number three, please.
  • 52:12 - 52:17
    OK. When did you check the other two
    German networks didn't fix the identifier
  • 52:17 - 52:22
    and the issue.
    K. Which network do you work for?
  • 52:22 - 52:28
    Mic 2: I'm Holger. We talked last week.
    K: Yeah. So yeah. Maybe you fixed it too.
  • 52:28 - 52:31
    We didn't, we didn't check.
    Mic 2: We fixed it within 24 hour, 24
  • 52:31 - 52:35
    hours after our call.
    K: Wow. OK.
  • 52:35 - 52:38
    Mic 2: On both networks.
    applause
  • 52:38 - 52:44
    Thank you. Better late than never. Thank
    you.
  • 52:44 - 52:47
    Mic 2: That's right.
    K: OK, so that's three out of four now,
  • 52:47 - 52:53
    that fix one out of 100 problems.
    Mic 2: No, it's… I know that's why we
  • 52:53 - 53:00
    don't go to the press and don't tell that
    SS7 is fixed and we know we still have
  • 53:00 - 53:07
    problems also. It's all four. I work for
    Telefonica, which is O2 and eplus.
  • 53:07 - 53:11
    K: Oh yeah. Well, congratulations. Sorry.
    Sorry for spoiling your Christmas.
  • 53:11 - 53:13
    laughter
  • 53:13 - 53:19
    Herald: Microphone number two, please.
    Mic 2: I'd like to know why these empty
  • 53:19 - 53:24
    pagings occur in the context of the
    location tracking, I thought, as soon as
  • 53:24 - 53:31
    the phone registers in the network, the
    base station, which is this connected to,
  • 53:31 - 53:33
    is known in the network anyway. Is that
    the case?
  • 53:33 - 53:37
    K: That's a very good question. And let me
    let me go back to one earlier slide to to
  • 53:37 - 53:46
    explain that, one second, so that the
    empty pagings do not occure when you send
  • 53:46 - 53:50
    these creepy AnytimeInterrogation
    messages. They are just there for spying
  • 53:50 - 53:55
    and there's no way to page the customer.
    But since this got blocked and Tobias went
  • 53:55 - 53:59
    into great level of detail explaining
    this, you need a couple of other messages
  • 53:59 - 54:03
    to now track some of this location and
    these messages when meant for location
  • 54:03 - 54:10
    tracking them and ment for other purposes.
    For instance, as I provide subscriber info
  • 54:10 - 54:15
    that however you reach it is always the
    last message you need. This does do a
  • 54:15 - 54:19
    paging and then to provide subscriber info
    really makes no sense unless you send
  • 54:19 - 54:24
    something afterwards also, deliver an SMS
    connect to call or whatever. So the paging
  • 54:24 - 54:30
    is already sent in anticipation that an
    SMS will come or that the call will come.
  • 54:30 - 54:34
    But if you're only the creepy guy tracking
    it, they're going to send it SMS and
  • 54:34 - 54:38
    that's where the empty paging comes from.
    Mic 2: OK, but still also in these cases
  • 54:38 - 54:44
    where something follows the paging, isn't
    it a type of double checking whether it's
  • 54:44 - 54:50
    really there or I mean, the location info
    itself should already be present and the
  • 54:50 - 54:54
    network, isn't it?
    K: Yeah, yeah. It just reconfirms that the
  • 54:54 - 54:58
    subscriber is really there. So it's
    basically saying: Somebody you just
  • 54:58 - 55:01
    interrogated your location because they
    want to send you something. Let's check
  • 55:01 - 55:05
    that you're really still there because
    otherwise we'll tell them something wrong.
  • 55:05 - 55:10
    But Tobias do you want to comment on that.
    Tobias: Yeah. OK, so the empty paging is
  • 55:10 - 55:16
    not anticipation or something that's
    coming after. It's to get the current cell
  • 55:16 - 55:21
    that you are located at, because when you
    are moving around in your location area
  • 55:21 - 55:25
    and the area that is covered by the
    switching center that you're currently
  • 55:25 - 55:31
    being served by, your phone doesn't
    necessarily contact the base station. So
  • 55:31 - 55:38
    it could be that that the networks last
    position of you is somewhere you received
  • 55:38 - 55:44
    an SMS or text or call, and then you moved
    to a completely different area if your
  • 55:44 - 55:49
    phone didn't have network contact in the
    meantime, the network would still only
  • 55:49 - 55:56
    know the last point of contact. So that's
    why the why the empty paging happens so
  • 55:56 - 56:01
    that the that the network knows the base
    station that's actually currently closest
  • 56:01 - 56:07
    to you. That's also why the law
    enforcement uses a lot of Silent SMS so
  • 56:07 - 56:13
    that that they can get the last position
    in the network. And it's also an option if
  • 56:13 - 56:17
    you send provide subscriber information,
    you can just send it and get back the last
  • 56:17 - 56:24
    known position without a paging or you can
    set the current location flag and provide
  • 56:24 - 56:30
    subscriber information. And only then the
    subscriber gets paged and you will receive
  • 56:30 - 56:34
    the current location.
    K: And that's that's one good example for
  • 56:34 - 56:38
    how SS7, which is supposed to be
    so insecure we can never fix it, can
  • 56:38 - 56:43
    easily be fixed. There's an option that
    says we're using this as normal feature
  • 56:43 - 56:46
    that's absolutely needed. And we have this
    creepy extension to also ask for the
  • 56:46 - 56:51
    location. And some networks choose to not
    answer that. The answer was zero zero zero
  • 56:51 - 56:58
    zero and nothing broke. Right. So you can
    just ignore the insecure parts of SS7 and
  • 56:58 - 57:02
    do whatever you think is right. And for
    the most part, it continues to work. But
  • 57:02 - 57:04
    I think we're well beyond answering
    your question now right?
  • 57:04 - 57:11
    Mic 2: No, but from your answers. Thank
    you very much. But another question
  • 57:11 - 57:17
    arises, because if it's actually to locate
    your phone and to find out which cell
  • 57:17 - 57:23
    you're actually in, then it implies that
    it's not only one base station that since
  • 57:23 - 57:29
    the paging call, but a whole bunch of base
    stations. Do you know something about the
  • 57:29 - 57:35
    algorithm? I mean, how many around the
    last known location are paging everybody
  • 57:35 - 57:40
    nationwide or how does..
    K: Everybody can implement this as they
  • 57:40 - 57:45
    wish? And I don't have much insights into
    how 3G does it, but in 2G typically is:
  • 57:45 - 57:50
    There's one paging send in the last cell
    that saw you. You don't respond. It's send
  • 57:50 - 57:54
    in a larger area. You don't respond. It's
    sent for the whole location area. And then
  • 57:54 - 57:58
    some networks, you don't respond. They
    send it in the entire country. But that's
  • 57:58 - 58:02
    rare. Right?
    Mic 2: Thank you very much.
  • 58:02 - 58:13
    Herald: Okay. Questions from the IRC?
    Signal Angel: Did SnoopSnitch allow you to
  • 58:13 - 58:21
    reveal any kind of attack in countries.
    Not special name in mind.
  • 58:21 - 58:27
    K: Does it allow you to detect attacks in
    countries? Yeah, yeah, some kind of
  • 58:27 - 58:33
    Tapsell. I think the answer is yes. Its
    whole purpose is to detect attacks. And it
  • 58:33 - 58:36
    also works in countries…
    laughter
  • 58:36 - 58:40
    Herald: Did you succeed in detecting attacks.
    K: Did we succeed in
  • 58:40 - 58:47
    detecting. Yes, we did. And if you go down
    to the Saal C, Room C, you can see how it's
  • 58:47 - 58:54
    currently people are being attacked and
    currently they detect that. Ok
  • 58:54 - 58:59
    Herald: OK microphone number five, please.
    Mic 5: Yes, thanks, it's going back to SS7
  • 58:59 - 59:06
    basics. Can you quickly explain how SS7 is
    implemented? Is this a VPN on the public
  • 59:06 - 59:11
    Internet through the providers? What's the
    technical reality of transport?
  • 59:11 - 59:17
    K: That's a very good question. Of course,
    that's a very good question. And I only
  • 59:17 - 59:22
    have half of the information, too. I keep
    learning. But so it seems that it was
  • 59:22 - 59:27
    implemented initially as a network between
    Western European telcos and their run
  • 59:27 - 59:34
    cables, dedicated cables for SS7.
    SIGTRAN they called this and then a couple
  • 59:34 - 59:38
    more networks connected to it. And each
    of them had to run the cable to one of the
  • 59:38 - 59:43
    other telcos. But eventually they changed
    that and then introduced what I call
  • 59:43 - 59:47
    routing providers. So telcos are not
    connected to each other usually, but
  • 59:47 - 59:52
    through a routing provider like on the
    Internet and those routing providers, they
  • 59:52 - 59:57
    typically don't run a cable to your house
    anymore. If you are a new telco, they give
  • 59:57 - 60:01
    you a VPN over the Internet. So it's
    diverse. I'm sure there's still some
  • 60:01 - 60:05
    dedicated lines between Germany and
    France, say, and there's some others
  • 60:05 - 60:09
    connecting and these big clouds that are
    routing providers. And it's actually
  • 60:09 - 60:12
    really difficult to get your address
    routed everywhere in the world. So even if
  • 60:12 - 60:17
    you connect to SS7, all you're connected
    to is one routing provider and that
  • 60:17 - 60:22
    routing provider knows that you own these
    addresses. Now it's up to you to convince
  • 60:22 - 60:26
    every other of the big seven or nine,
    depending on how you count routing
  • 60:26 - 60:34
    providers that you are that guy with those
    addresses. So the BGP equivalent of SS7 is
  • 60:34 - 60:40
    to get nine roaming agreements signed with
    people on these other nine operators and
  • 60:40 - 60:45
    then fax those roaming agreements to
    everybody else involved. So they type it
  • 60:45 - 60:50
    into your computer, into their computers,
    very manual and very hard to grow the
  • 60:50 - 60:53
    network. But for the most part, it doesn't
    change, of course-
  • 60:53 - 60:58
    Mic 5: So that the low level transport is
    not really an attack surface from the
  • 60:58 - 61:01
    public Internet.
    K: It can be the low level transport can
  • 61:01 - 61:07
    be an attack surface if people just
    stupidly leave open their local networks.
  • 61:07 - 61:11
    But it's rare. It's much more common,
    speaking about our talk next year,
  • 61:11 - 61:16
    hopefully on the other interconnect
    networks, there's one interconnect network
  • 61:16 - 61:22
    for data roaming. It's called GRX. And
    since everything is IP anyway on data
  • 61:22 - 61:27
    roaming, people sometimes do leave it out
    on the Internet or just do it unencrypted
  • 61:27 - 61:31
    over the Internet. And it does seem to
    become more popular also with the SS7
  • 61:31 - 61:37
    replacement Diameter, which again is pure
    IP. So there's no dedicated thing that you
  • 61:37 - 61:42
    first have to encapsulate in a VPN before
    you can route it over the Internet. You
  • 61:42 - 61:47
    can run Diameter over the open Internet if
    you want. It's stupid, but people seem to
  • 61:47 - 61:52
    do it anyway.
    Herald: OK, the microphone number six,
  • 61:52 - 61:55
    please.
    Mic 6: OK, my question is, if you could
  • 61:55 - 62:00
    comment why these message were put in the
    protocol at the first place, it they are
  • 62:00 - 62:07
    so easy to block and to fix. And the other
    question is, if all the other problems
  • 62:07 - 62:12
    that you pointed out are as easy to fix
    for the network operators.
  • 62:12 - 62:17
    K: So I don't have an answer to your first
    question. Why do you put a tracking
  • 62:17 - 62:22
    message in the standard and then call it
    AnytimeInterrogation, gosh, like that
  • 62:22 - 62:26
    invokes feelings for me,
    interrogation room and all. I mean, this
  • 62:26 - 62:30
    is spy stuff, right? And there's no
    practical, purposeful but. Right. Who
  • 62:30 - 62:35
    wrote SS7 standard? Western European
    governments being afraid of the Russians,
  • 62:35 - 62:39
    of their own citizens, who knows? Right. I
    don't know why they put every single
  • 62:39 - 62:44
    message in, though. So your second
    question was what again?
  • 62:44 - 62:49
    Mic 6: If the other vulnerabilities are as
    easy as to fix? Or just blocking messages.
  • 62:49 - 62:56
    K: No they're not. And I tried to point
    that out in one of the slides that… that
  • 62:56 - 63:02
    AnytimeInterrogation can be fixed, as can,
    for instance, as does SendIdentification
  • 63:02 - 63:07
    message, right. You just block that has no
    purpose, routing this internationally. But
  • 63:07 - 63:12
    the other queries on this page, at least
    you need those internationally, at least
  • 63:12 - 63:17
    to enable roaming. So the best you can do
    is, as I said, first block these queries
  • 63:17 - 63:21
    from anybody who's not your roaming
    partner, right? Don't respond to those
  • 63:21 - 63:27
    people and then do some plausibility
    checking, secondly, make sure that if a
  • 63:27 - 63:31
    subscriber is actually in your own network,
    that you don't honor requests from another
  • 63:31 - 63:37
    country. Right. And that should remove most
    of the issues because most abuse comes from
  • 63:37 - 63:40
    other countries. It's just more likely if
    there's 800 parties connected to this
  • 63:40 - 63:47
    network that the one doing the abuse is
    not yours. Good question. Thanks.
  • 63:47 - 63:59
    Subtitles created by c3subtitles.de
    in the year 2021. Join, and help us!
Title:
Karsten Nohl: Mobile self-defense
Description:

more » « less
Video Language:
English
Duration:
01:03:59

English subtitles

Revisions