We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Shut Up and Take My Money!

00:00

Formale Metadaten

Titel
Shut Up and Take My Money!
Untertitel
The Red Pill of N26 Security
Serientitel
Anzahl der Teile
147
Autor
Lizenz
CC-Namensnennung 4.0 International:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
FinTechs increasingly cut the ground from under long-established banks’ feet. With a "Mobile First" strategy, many set their sights on bringing all financial tasks—checking the account balance, making transactions, arranging investments, and ordering an overdraft—on your smartphone. In a business area that was once entirely committed to security, Fintechs make a hip design and outstanding user experience their one and only priority. Even though this strategy is rewarded by rapidly increasing customer numbers, it also reveals a flawed understanding of security. With the example of the pan-European banking startup N26 (formerly Number26), we succeeded independently from the used device to leak customer data, manipulate transactions, and to entirely take over accounts to ultimately issue arbitrary transactions—even without credit.
Schlagwörter
ComputersicherheitWechselseitige InformationTrägheitsmomentDualitätssatzGruppenoperationProdukt <Mathematik>Wort <Informatik>ComputersicherheitSoftwarePhysikalisches SystemAssoziativgesetzPasswortMultiplikationsoperatorTelebankingZweiInformatikAuthentifikationApp <Programm>Vorlesung/Konferenz
Ganze FunktionApp <Programm>TelebankingRechter WinkelProgrammierungVorlesung/Konferenz
AuthentifikationApp <Programm>TelebankingPasswortAlgorithmische ProgrammierspracheApp <Programm>Transaktion
Wurm <Informatik>AuthentifikationApp <Programm>AuthentifikationEvoluteTelebankingIndexberechnungEndliche ModelltheorieDifferenteVorlesung/Konferenz
AuthentifikationApp <Programm>DifferenteAuthentifikationEndliche ModelltheorieTelebankingApp <Programm>TransaktionMultiplikationsoperator
Offene MengeApp <Programm>IndexberechnungHilfesystemSmartphoneVorlesung/KonferenzXMLComputeranimation
App <Programm>Vorlesung/Konferenz
TransaktionZahlenbereichAdressraumPasswortGarbentheorieComputersicherheitNotepad-ComputerApp <Programm>E-MailVorlesung/Konferenz
CodeWärmeübergangE-MailPasswortComputersicherheitTransaktionIdentitätsverwaltungSmartphoneComputersicherheitSmartphoneNummernsystemWärmeübergangDigitalisierungMultiplikationsoperatorAuthentifikationApp <Programm>ZahlenbereichTeilbarkeitPerspektivePersönliche IdentifikationsnummerPublic-Key-KryptosystemCodeTransaktionIndexberechnungRFID
TransaktionComputersicherheitWurm <Informatik>TransaktionPublic-Key-KryptosystemFront-End <Software>Protokoll <Datenverarbeitungssystem>Prozess <Informatik>HyperbelverfahrenProdukt <Mathematik>Systemaufruf
Architektur <Informatik>Wurm <Informatik>SCI <Informatik>App <Programm>Protokoll <Datenverarbeitungssystem>Ein-AusgabeFront-End <Software>Humanoider RoboterClientDigitales ZertifikatComputeranimationDiagramm
Architektur <Informatik>Digitales ZertifikatDigitales ZertifikatClientProxy ServerPersönliche IdentifikationsnummerEchtzeitsystemTransaktionComputeranimationFlussdiagrammVorlesung/Konferenz
Wurm <Informatik>ZehnTransaktionReelle ZahlSCI <Informatik>ServerPersönliche IdentifikationsnummerDirekte numerische SimulationDigitales ZertifikatDatensatzApp <Programm>GamecontrollerSoftwaretestWort <Informatik>ComputeranimationVorlesung/Konferenz
WärmeübergangIdentitätsverwaltungTransaktionReelle ZahlRuhmasseCodeBenutzerfreundlichkeitWärmeübergangTransaktionTeilbarkeitAbstandApp <Programm>Code
Reelle ZahlTransaktionSystem-on-ChipCase-ModdingGruppenoperationTransaktionProgramm/QuellcodeComputeranimation
Wurm <Informatik>SpywareEchtzeitsystemTransaktionGraphiktablettLoginWärmeübergangCodeComputeranimationVorlesung/Konferenz
SpywareLoginWurm <Informatik>Wiederherstellung <Informatik>EinfügungsdämpfungE-MailPasswortZeitbereichPunktTaskGruppenoperationTransaktionLoginEinfügungsdämpfungPasswortWiederherstellung <Informatik>E-MailVerschlingungAlgorithmische ProgrammierspracheComputeranimationVorlesung/Konferenz
Wiederherstellung <Informatik>EinfügungsdämpfungPasswortZeitbereichE-MailLoginPasswortDomain <Netzwerk>ÄhnlichkeitsgeometrieVersionsverwaltungE-MailPhishingComputeranimation
Wurm <Informatik>PhishingZeitbereichÄhnlichkeitsgeometrieDomain-NameSelbst organisierendes SystemErlang-VerteilungE-MailWärmeübergangTransaktionZahlenbereichDomain <Netzwerk>PasswortTransaktionPeer-to-Peer-NetzVorlesung/KonferenzJSONXML
PhishingTransaktionWärmeübergangRegulärer Ausdruck <Textverarbeitung>Office-PaketZahlenbereichPlotterAdressraumKontextbezogenes SystemE-MailFront-End <Software>
Lokales MinimumInverser LimesTropfenTransaktionPhishingWarpingWärmeübergangSchnittmengeTropfenInverser LimesE-MailVorlesung/KonferenzComputeranimation
PhishingPasswortE-MailComputersicherheitTropfenQuaderPasswortLeckDigital Rights ManagementVerschlingungWhiteboardVorlesung/KonferenzXML
Wurm <Informatik>PhishingPasswortTransaktionTransaktionLoginEin-AusgabeApp <Programm>MultiplikationsoperatorComputeranimationVorlesung/Konferenz
TransaktionApp <Programm>TransaktionGraphiktablettZahlenbereichClientTypentheorieWurm <Informatik>PunktComputeranimation
TransaktionAlgorithmusTeilmengeEnergiedichteAlgorithmusTransaktionVorlesung/KonferenzComputeranimation
AlgorithmusTransaktionWurm <Informatik>Hill-DifferentialgleichungTransaktionMultiplikationsoperatorMAPComputeranimation
TransaktionAlgorithmusDienst <Informatik>TypentheorieTransaktionInhalt <Mathematik>CodeSpywareWärmeübergangGüte der AnpassungComputeranimationVorlesung/Konferenz
WärmeübergangCodeSpywareFeuchtigkeitPlastikkarteE-MailVerschlingungGraphiktablettWärmeübergangCodeProzess <Informatik>ComputeranimationVorlesung/KonferenzDiagramm
E-MailVerschlingungWurm <Informatik>WärmeübergangCodePlastikkarteProzess <Informatik>E-MailVerschlingungApp <Programm>WärmeübergangCodePlastikkarteDigitalisierungComputeranimation
PlastikkarteCodeWärmeübergangVerschlingungE-MailSmartphoneToken-RingPlastikkarteProzess <Informatik>ZahlenbereichComputeranimation
Wurm <Informatik>E-MailVerschlingungCodeWärmeübergangPlastikkarteWärmeübergangOrdnung <Mathematik>PlastikkarteCodeSimulationE-MailApp <Programm>Vorlesung/Konferenz
Wurm <Informatik>E-MailExogene VariableMessage-PassingApp <Programm>VerschlingungExogene VariableE-MailMomentenproblemPlastikkarteWärmeübergangComputeranimation
Wurm <Informatik>PlastikkarteKategorie <Mathematik>WärmeübergangPlastikkarteTransaktionCode
PlastikkarteTransaktionE-MailSmartphoneDefaultVorlesung/Konferenz
Wurm <Informatik>PlastikkarteTransaktionWärmeübergangCodeWärmeübergangCodeCodierung
Quantisierung <Physik>Wechselseitige InformationLokales MinimumPersönliche IdentifikationsnummerWurm <Informatik>CodeWärmeübergangPlastikkarteWärmeübergangCodeVorlesung/KonferenzComputeranimation
ZahlenbereichPlastikkarteSimulationToken-RingSmartphoneZahlzeichenAlgorithmische ProgrammierspracheSimulationZahlenbereichPlastikkarteForcingBildschirmmaskeLoginBeweistheorieVorlesung/Konferenz
Wurm <Informatik>SimulationPlastikkarteToken-RingZahlenbereichMittelwertZweiFront-End <Software>Lokales MinimumForcingMittelwertComputeranimationVorlesung/Konferenz
Demo <Programm>Wurm <Informatik>Persönliche IdentifikationsnummerToken-RingVerhandlungs-InformationssystemNumerisches VerfahrenVerschlingungWärmeübergangPlastikkarteE-MailSmartphoneRechenwerkApp <Programm>SkriptspracheMultiplikationsoperatorExogene VariableZentrische StreckungKardinalzahlForcingComputeranimation
MaschinenschreibenPasswortMaschinenschreibenPasswortXMLVorlesung/Konferenz
RechenwerkZentrische StreckungWärmeübergangE-MailPersönliche IdentifikationsnummerComputersicherheitEndliche ModelltheorieAdressraumComputeranimationVorlesung/KonferenzBesprechung/Interview
ComputersicherheitDatenmodellE-MailAdressraumAuthentifikationPlastikkarteStrom <Mathematik>MathematikAdressraumApp <Programm>E-MailArithmetisches MittelStrömungsrichtungSummengleichungComputeranimationVorlesung/Konferenz
E-MailInformationDatensichtgerätApp <Programm>Vorlesung/Konferenz
E-MailAiry-FunktionBildschirmfensterWurm <Informatik>E-MailKonditionszahlBildschirmsymbolParametersystemJSONXMLComputeranimation
KonditionszahlDienst <Informatik>JSONComputeranimationVorlesung/KonferenzBesprechung/Interview
Wurm <Informatik>ZehnPatch <Software>Summengleichung
Quantisierung <Physik>BitVorlesung/KonferenzComputeranimation
Kartesische AbgeschlossenheitSoftwareschwachstelleComputeranimationVorlesung/KonferenzBesprechung/Interview
Kartesische AbgeschlossenheitProzess <Informatik>Persönliche IdentifikationsnummerDigitales ZertifikatEin-AusgabeVorlesung/KonferenzBesprechung/InterviewComputeranimation
Kartesische AbgeschlossenheitICC-GruppeVideokonferenzComputersicherheitComputersicherheitVideokonferenzComputeranimation
Wurm <Informatik>VideokonferenzComputersicherheitComputersicherheitOrtsoperatorStrategisches SpielHomepageComputeranimation
SoftwareschwachstelleMultiplikationsoperatorComputersicherheitVorlesung/KonferenzBesprechung/Interview
RechenwerkInzidenzalgebraMultiplikationsoperatorComputeranimationVorlesung/Konferenz
App <Programm>ZahlenbereichVersionsverwaltungDigitales ZertifikatComputeranimation
Digitales ZertifikatPersönliche IdentifikationsnummerApp <Programm>VersionsverwaltungClientZahlenbereichVorlesung/KonferenzBesprechung/Interview
ZahlenbereichDigitales ZertifikatTropfenBitChiffrierungVorlesung/Konferenz
Direkte numerische SimulationDatensatzDigitales ZertifikatBitUnrundheitFlächeninhaltMultiplikationsoperatorBesprechung/Interview
MedianwertKartesische AbgeschlossenheitHypermediaVorlesung/KonferenzComputeranimation
Transkript: Englisch(automatisch erzeugt)
Next talk is going to be shut up and take my money by Vincent Halpert Vincent is a research associate at the security research group of the department of computer science at Friedrich Alexander
Universität in Erlangen Nuremberg, Germany typical very long German word His main research interests are authentication system security and software protection of mobile devices There's actually Vincent's second time speaking at the Congress last year his talk discussed
conceptual insecurity of app generated passwords in online banking this year he will discuss the practical aspects and some Successful hacks that if I recall correctly took over entire bank accounts from users mobile apps with that Vincent over to you
Yeah, hello again, thanks for the warm welcome and let's dive right into it because we have a tough program Okay, first of all online banking is something that affects us all
Because virtually everybody uses it In traditional online banking we use two devices one to initiate our payments and to log in with username and password and another device to confirm transactions
With the rise of mobile devices app based confirmation procedures became popular like and up like this app there in In the recent past what I have been talking about last year Yeah, it became popular to implement those two devices in two apps
That means you only have one single device and have two apps now to authenticate Transactions, yeah Last year I showed that this has severe conceptual drawbacks But this is not the end of it
there the latest evolution in the In online banking are now one app authentication models. I Already said this last year actually doesn't make so much difference So banks are no longer faking to have real to two-factor authentication It's now clear that it's just one so you do the transaction transaction initialization
Inside the app and the confirmation is just another dialogue inside the app this time. I want to talk about n26 yeah, the shining star on the German fintech sky and Yeah
Actually this time I only going to be talking about technical issues and yet it's clear that we have Similar conceptual problems like with two app authentication, but I will focus on technical issues because we have enough of this Yeah
briefly about n26 And 26 is a Berlin based mobile first fintech and it plans Yeah to establish your smartphone as your financial hub for everything so that you can do little literally everything from inside the app Actually, it's only founded in 2013
It started in 2015 with the app and it already has over 200,000 customers, which is astonishing actually It now also has its own European banking license, it's only I think half a year ago and it announced not not even one month ago that it's now available in 17 European countries and
They also claim that you can open a bank account in just eight minutes as it turns out you can lose it even faster Okay. All right Just like so let's talk briefly about transaction security in the number 26 app
If you want to do a transaction you at first need to log in this works with your user username in this case It's just your email address and your password. This is pretty standard afterwards. You're good to initiate a transaction After you entered all the details, you also have to supply a transfer code. This is just a four digit number
You use this also to withdraw cash probably would call this pin and the last last factor in this authentic Authentication scheme is your paired phone. This is actually the most important security Feature of the n26 account and you can only pay up one smartphone with your n26 account
that means From a technical perspective the n26 app the first time the very first time you started generates an RSA key pair and sets the public key to the n26 backend and whenever you initiate a transaction They are going to send a encrypted challenge to your smartphone and that you send it back decrypted That's how it works actually
Repairing that means pairing another phone is a pretty well secured process, but we will talk about this later Just to talk about like the infrastructure of n26 basically, they have two apps one for iOS one for Android and they communicate over a JSON based protocol and
TLS encrypted the back end is at API dot tech 26 dot D How do I know actually that this is a JSON based protocol because I used a TLS Mitten attack a man-in-the-middle attack to learn the protocol I actually suspect that I only needed to install a certificate the middle proxy certificate on the client
But actually I was surprised that I didn't need to touch the client because they didn't implement any certificate pinning. So so that means It's that the first thing that comes into mind is like let's do real-time
Transaction manipulation that means we manipulate a transaction that the user does But we will change the recipient and the user won't see nothing about this So if you look at this graphic again What if an attacker could get the DNS record of API dot tech 26 de under his control?
This would would mean that all and traffic is rooted over the man-in-the-middle attacker server and As there's no certificate pinning we could just issue a let's encrypt TLS certificate and the app is going to trust the certificate How does this work? Let's take take an example here
Let's imagine. I want to transfer to your to my friend Dominic after I entered all the transaction details I have to enter my transfer code to when I did this I get like the second factor where you need the The paired device and I need to confirm it. This is just like the next dialogue inside the app
After I confirmed it the transaction went through everything looks good and two euro less on my account pretty good in the next step You you can see in your transaction overview to that There are two euro less but after the attack when n26
Realized that something wrong was going on and they fixed it You will realize that we actually transferred 20 euros not two But this was completely transparent for the user even after the attack Okay, this is nice and we can we can manipulate a transaction real-time, but wouldn't it be even better
More interesting to take over entire accounts to do our own transactions And for this we need the login credentials the transfer code and the pad phone So we need to obtain all of them. Let's start with the login credentials
Actually, I want to assume to partly or mostly that the login credentials are already compromised but there are some weak points in the n26 transaction or there in the security system of them that Yeah, make it an easier task to obtain those login credentials There are two things I want to talk about Yes, the first thing is the recovery from loss procedure when you forgot your password and 20 X and
26 just sends an email to your email account. There's a link inside you click it and you can just reset the password and This breaks the n26 password policy, which is actually pretty solid
Because if you have access to the email account You can have automatically access to the n26 account too and the access to the email account could be as bad as password or one two three four five six Another idea is spear phishing think of spear phishing like a more targeted version of phishing what you always need for phishing is a similar domain something the user can relate to and
If you want to make spear phishing you want to have it more targeted That means you want to expose n26 customers to only send out mails to them and you need to have a valid reason to contact them For about the domain usually n26 uses number 26 dot de to and
For password resets, for example, I think number 26 tech sounds pretty valid in my eyes Only by chance. I happen to own the domain The Next and next thing is exposing n26 customers and 26 offers peer-to-peer
Transactions that means if you have if your recipient also has an n26 account those transactions are instant to Show the n26 customers who office contacts actually have an n26 account They upload all of the email addresses all of the and phone numbers in your address book to the n26 backend
unhashed But how can we use but we actually want to use this to identify Customers of a given data set we can actually abuse this API for that
Do you remember the recent Dropbox and leak that revealed 68 million accounts? We evaluated all of those 68 email accounts against this API and N26 took no notice of this there were no limits applied. They just think I'm really popular
Yeah in the end we revealed 33,000 N26 customers and could now send out emails to them actually this also provides a valid reason to contact them for example
The usual email of n26 looks somehow like this. Yeah, so we could say to them Hey, you're affected by the Dropbox leak and please change your password for your own security Actually, and then like here click this link to change your password. Yeah, so
Now I can already see the grow grow the n26 management boards Yeah, nervous, but don't worry. We didn't do this. My professor had legal concerns Okay Now that in that we have the login credentials and I we have to wonder can we actually already do something with those login credentials?
And this brings me to Siri transactions The with iOS 10 and 26 now supports transactions using Siri That means now you can just say send five years to Dominic admire using n26 Then the transaction pops up and you can say send it and afterwards it's gone the app
doesn't even open yeah, so this already sounds wrong, but But you can only do this with the paired device if you if you use another phone and just log in and Try to use Siri with this and this dialogue appears and you really have to open the app
And yeah, I have to confirm it with the pad phone As it turns out this is just a client feature. Yeah, so the So what they do this is actually the entire payload you need you just it's like five years It's the atomic Maya. There's the phone number and Look at look at this API endpoint transactions unverified. Yeah, then
Yeah, okay. So it turns out you don't need the pad phone to do this this type of transactions Yet another thing that's interesting
Is that n26 claims that they have some intelligent algorithms to immediately detect? Irregularities and to prevent fraud before it even occurs. Yeah, so we thought challenge accepted So and what we actually did and I think this is pretty irregular
We sent two thousand Siri transactions worth one cent within 30 minutes. Yeah So try to speak that fast Okay And so what happened like we waited the next day the day after and nobody actually
made contact with us and we thought they would never actually Make contact but over three weeks later and 26 required Dominic to explain the unusual amount of transactions Okay, and they even threatened to cancel his account. I mean, this is actually yeah, it's reasonable because it's yeah it's a clear misuse of the account and
violates the types of service of them but Dominique didn't send those transactions you receive them. Yeah, so The contact that the wrong person. Yeah, this is kind of like if you if Gmail cancels your account because you received spam Okay, let's let's go back to the account hijacking and the next thing we need to obtain as the transfer code and get
to control over the pad phone What we will do with the transfer code is we will try to reset it and
The pad phone we have to unpair Actually, those processes are not as independent as it seems so I will write start with the paired phone As I told in the beginning Unpairing is actually a highly secured process and I mean this really this is my serious opinion
So let's look at the process at first when you want to pair on your phone You like I said, you need to unpack the existing one Therefore you open the app then you click at unpair and afterwards and they send a link to your and email account Then in the email, you need to follow the unpairing email
the unpairing link in The next step the real unpairing process starts where you have to enter your transfer code first Then your MasterCard ID This is something that's kind of special for N26 like every N26 account comes with a MasterCard and they have printed a 10 digit numerical token below your name
I don't know what this actually is. It's not the pen. It's not the credit card number, but some other sort of token So you need to have the MasterCard actually and in the last step They are going to send an SMS to you With a token and you have to enter it and only after this process the unpairing is done
So that means we need to have access to the email account You need to know the transfer code We need to have the MasterCard and we need to own the SIM card in order to receive the token You can't screw up each of those
Okay, let's go into it So the first thing when you actually click on that on that item in your app where it says start unpairing It sends this is basically HTTP get request, but you wouldn't believe that they sent the link as a response
Yeah, so that it's not this plate, but it it's there So you don't need to have access to the email account because it's in the response Yeah, okay
Next thing the transfer code and I actually will skip this for the moment and we'll get right back to this But the next thing is actually the MasterCard ID and yeah This ID is printed on the card and we don't have access to the end to that card. So what happened will we do? In the transaction overview N26 shows a lot of properties for example, like the amount the beneficiary whatever so
And it turns out that this That they used this MasterCard ID I they thought oh this is actually a nice ID let's use it as a prefix. Yeah, so Again, this is not displayed to the user inside the app, but it's clearly there in the API. It's way too verbose. Yeah
so Okay so whenever and The Delta let the the step that I just skipped was this transfer code
The transfer code is unknown Yeah So but you can reset the transfer code and it is as it turns out what you need to reset the transfer code It's the MasterCard ID
So You you need to enter those in this MasterCard ID that we just That I just told how we will get it and then we just will confirm our new transfer code. Think of one I don't know any code and Therefore we don't know we don't need to know the transfer code not even the old one because it's not required
The MasterCard ID is sufficient Then and the last step SMS the SIM card is inaccessible. We don't have access to that phone and But this is a five-digit token that they send out and it's only numbers. I mean, this is 100,000 possibilities
And Even for the login procedure the login form has a brute force protection This doesn't have any brute force protection So The maximum that I could get out of the back end was 160 requests per second
So this means So that means that would text on average Yeah, approximately five minutes to get this token
Yeah, so in the end we will just brute force it and that's it okay, that's Let's look if this really works there So at first we will log into the app just to see that it's paired and if it wouldn't be paired
We would now like see a dialogue that we should play our phone. So now So it opens great and now we will start our Script and N26 claimed that this attack doesn't scale just don't don't blink
So loud that those are the logging credentials that we do do all the fun and actually everything already happened it's just the brute forcing that now takes place and I have to admit that I have been really lucky this time because we are done now
So and like there are this is the response now the SMS numeric token is valid and the phone has been successfully unpaired So, okay. Now, let's verify in the app if this worked really So let's open it again Okay Touch ID expired. So this is actually good. That means that and something happened. Let's look in with our password and
There it prompts us for pairing the phone. So it worked Yeah
This even before I said that this attacks really scales very well it has a drawback because and free mails are sent out to the user the first one when you actually start the unpairing the second one when you Reset the transfer pin and the third one when the unpairing is successful and the user also receives an SMS
But it I mean fraud is perfectly possible. But is there a possibility to avoid this? So Let's try to call the customer support. Yeah The customer support is actually the most powerful entity in the n26 security model because they can even change things
You can't change inside the app. For example, your email address or name you cannot change now, but they can So let's talk with them. They can it turns out they they can also unpair phones So now the question arises, of course, you cannot just call there and say hey, my name is Vincent Please unpair my phone. Of course, they're going to authenticate you and what and what what will they ask?
They will ask for the MasterCard ID You that we know that the current account balance is always available if you have to login credentials Okay, there's one thing that's still missing place of birth
It's always the same. Yeah, so It's it's again you can't see this information inside the app yet It's just a display did but it's there there's so much information you can't think of really they know more about me than I do Okay, so now that means we have all information available and we can change any data and the user won't receive any notice of
That so no email nothing so we can just unpair the phone and later we can pair our own one Or like this is perfectly stealth now actually I Heard already, ah, I only got 50 euros on my account. Why should I care?
It this is actually a valid argument because we have many and 26 accounts are opened out of curiosity and Many are inactive or not using it Seriously, that means you only use it for traveling or paying things online because of the conditions
But you don't use it as a salary account. So there's frequently not so much money and in it but as this Wants to be the financial hub for all services. You of course can also Apply for an overdraft. Yeah, and this is an instant overdraft that is granted during two minutes and
It's between if you have guaranteed 50 euro and up to 2,000 and this requires the patch device What did we just do? We have to pet device. We have the entire account. So what do we do? We will just Hijack the account then we apply for an overdraft and and then we will take all the money
He has as a balance and as an overdraft So even if you don't have money on your account and think you're a safe you are not Okay This was was quite a bit something and I want to talk briefly about the disclosure before I will draw my conclusion
And I reported all these issues to n26 on September 25 I didn't establish the contact and this was the CCC. Thank you for that And I did this because I didn't know how n26 would react to this kind of vulnerabilities
but actually there was no reason to think so because they acted really professional and Yeah, they were actually Thankful that I revealed these vulnerabilities
Yeah, then afterwards and they started to incrementally fix the issues I don't know when they fixed the first thing I didn't monitor the process but the last fix I know of happened on December 13 when they implemented certificate pinning on iOS and
Apparently I have to say that I didn't check everything But apparently all issues are resolved But what what are the consequences and out of this it is obvious that n26 needs to put more emphasis on security It's important to notice that this wasn't a coincidence
It simply wasn't and n26 needs to understand that it's not enough to release videos with caption mobile first meet safety first and to claim That security is of paramount importance of him of them So PR shouldn't do your security It's funny if you if you visit the n26 homepage you will find out that they had currently have
44 open positions not even one is dedicated to security Furthermore with such a strategy fintech squander the trust and financial institutions that banks established and yeah over years
actually today you usually trust in your bank that they will deal with your money responsibly and In the end you also need to question authorities, I mean it was boffin that that granted a banking license to n26 only six months ago and Really those vulnerabilities are inside for longer time
Okay, I think like Resume for this is they you shouldn't say works for me when it's about security. Yeah, so Thank you, thank you, thank you Vincent that was awesome and also kind of fucking scary I
We only have a short time for questions is there anybody who has a question for Vincent you know I guess everybody is out
deleting banking apps Number six So quick question is microphone on okay? Do you know whether they have? Disallowed those apps that have not yet been updated to still manage their bank account
So for example if someone has a mobile app that has not yet been Updated to the version that includes certificate pinning with that person still be vulnerable to man-in-the-middle attacks. Yes So they actually they they don't have so much of an idea which device you are using they don't even know
Which is the pet device? This is only a client value Do two more to go here on number one Yeah, I thanks for the talk did they actually invite you to Help them or give your talk at number 26. I have to have been in contact with you
Yeah, we have been in contact, and I also visited them and gave a workshops, so yeah, we did they Do one last one here from number five please so
During your talk you name-dropped let's encrypt And you kind of glossed over that bit about getting them to issue a certificate for their API hostname. Do you know something? I don't The question I get I don't so you you mentioned getting a let's encrypt certificate to Impersonate their API hostname because they weren't using certificate pinning how about how did you go about doing that?
But I didn't do this like was a scenario this Yeah, that's an attack scenario, okay, I didn't I I didn't hijack the DNS record. Oh, okay, sorry All right, thanks everybody for joining we get a big round of applause here for Vincent