applied security research
Wesley Neelen - 20 mei 2020

Inside a phishing panel

This blog describes some background information on the uAdmin panel. This video shows the panel live in action:


Dutch and Belgium citizens are receiving phishing attacks every day. But how does that exactly work?

Phishers are approaching citizens through mail, text messages, WhatsApp or auction platforms. They are trying to lure the victim to a phishing site to fill in their credentials. Those credentials then are used to gain access to the bank account of the victim.

While investigating the phishing frameworks that are used, we see continuous innovation in knowledge and tools the phishers use. They improve their attack scenario’s all the time, which is for a large part why these scams are so successful.

Analyzing phishing sites is fun!

At Zolder we are actively monitoring for phishing sites targeting Dutch and Belgium users. A very valuable source to do so are the certificate transparency logs. These were introduced to improve reliability of the decentralized nature of the certificate ecosystem. The goal of the initiative is to make the ecosystem more transparent by giving everyone around the globe the ability to monitor and/or audit certificates being issued by the different authorities. One of the reasons is the hack performed at DigiNotar back in 2011.

Our monitoring system finds potential phishing URLs in the transparency logs. We get many phishing sites that are being used to perform attacks against Dutch and Belgium citizens. Usually the main goal of those attacks is to obtain access to the bank accounts of the victims. We have seen almost every bank in The Netherlands and Belgium being imitated for these kind of scams..

It’s fun to investigate the phishing sites that we see being setup. After a while, one will start to recognize the specific frameworks being used, the different techniques or even discover who has been (successfully) targeted by the attacks. So, you can probably imagine: that’s just really fun to do 😀.

New framework

Recently we stumbled upon a new phishing framework. The framework is called Universal Admin, better known as “uAdmin”. After some time, we were able to get our hands on the source code of the uAdmin framework. This was great, as it allows us to see the internal working of such a phishing scam. By analyzing the source code we determined some interesting facts.

Separated phishing page and admin panel

uAdmin consists of two main components. The first part is a phishing page, also called “FAKES”. Those fakes are the phishing pages that the victim will see.  For example: a fake ING or ABN login page. The fake pages look remarkably similar to the legitimate ones and will be hard to distinguish from real. All the information that a victim fills in into the fake is sent to the attacker.

The second part is the uAdmin panel. This is only accessible to the attacker, and allows him to see the status of the attack. Furthermore the panel allows the attacker to perform specific actions targeted at the current visitor on the phishing site.

The admin panel can be hosted on a system different from the phishing site. This has the advantage that usually at one point the fake is taken down by the hosting provider. When separated, the admin panel in that case will just stay online. The attacker just installs the fakes on a new system and carry on.  The following graphic shows when separated systems are used:


uAdmin is an extendable framework. The code we obtained included fake sites for these banks by default: ING, ABN, SNS and Regiobank. It is possible to extend the framework easily with other phishing pages. Someone with PHP coding experience is even able to write his own custom phishing pages. So far, we have seen phishing pages for the following companies using the uAdmin framework:

  • bunq
  • Triodos
  • ASN
  • Rabobank
  • KNAB
  • PostNL
  • Marktplaats
  • MijnOverheid
  • DigiD
  • ING Betaalverzoek
  • ING BE
  • BNP
  • Argenta
  • AXA
  • KBC
  • Belfius
  • Fortis
  • FOD
  • CSAM

We have also seen a few fakes imitating banks from Germany (Sparkasse and Commerzbank) and Spain (Caixa Es and Santadar).

Man in the middle

This uAdmin framework is built to perform man-in-the-middle attacks. This makes the framework very powerful. The attacker sits between the victim and his bank, and lures his prey through all steps that are required to take over the bank account.

For example: the victim fills in the username and password of his bank account. After that he will be prompted a waiting screen (something to educate users on: banks never show spinning waiting icons for a very long time). Meanwhile, the attacker logs in with the stolen credentials at the real bank. The bank now prompts the attacker for the second factor in the login process. Which the attacker copies, and serves to the victim on the phishing site. The attacker is going to wait for the victim to login through his second factor device and return the information through the phishing page. Once submitted, the attacker will use this information to get access to the real bank. The victim then is forwarded to the legitimate banking site and probably will think an unimportant glitch occurred. At the same time the criminal is in the bank account and will order a money mule to send the money to and will withdraw it from an ATM.

The required steps differ for each bank. That’s why for every bank specific fake pages are available with different functions. But the idea is the same: request information from the victim or let them take actions (e.g. approve something on the mobile). Also, the flexibility of this panel enables the creativity of the phishers. We have even seen a panel that allowed a phisher to push a malicious APK file (mobile app for Android devices) to a victim. That does not seem to be directly useful to phish bank accounts, but might be used for other criminal activities.

A typical attack

Let me make it more tangible with an example. This is a example flow of a typical phishing attack (might differ per bank).

  • Message

    The phisher sends a message to the victim to lure him/her to a phishing site. The method and the scenarios used by the phishers are changing all the time. Victims are for example approached through text messages, e-mails, WhatsApp or auction sites.

  • Fake Site

    the victim clicks on the link. A imitation of a legit website is shown. The URL might be an indication of a phishing attack. But usually the website and even the URL looks like the legit website.


    The phisher gets a alarm in uAdmin that the victim has clicked the link. He is waiting the victim to fill in his/her first credentials.


    the victim fills in the first credentials. Depending on the bank, this might be a username / password combination or something generated by a external device (e-identifier, scanner, etc). After filling in a waiting screen is shown.

  • Bank App

    the phisher gets the first credentials and opens the corresponding bank application on a phone. He fills in the information obtained from the victim, while the victim is still at the waiting screen. The app usually returns a response from the bank, such as a code.

  • Command

    the phisher returns the response from the bank, back to the victim.

  • 2ND Factor

    the victim uses the response to perform second factor of the authentication process of his bank. He returns (if applicable) information of the second factor authentication back to the attacker by filling it into the phishing site. After filling in a waiting screen is shown again.

  • Login

    the phisher uses the information to get access to the bank account of the victim.

  • Forward

    the phisher redirects the user to another website, whenever he successfully obtained all required information. Usually the user is redirected to the legitimate website of his/her bank.

  • Transfer

    the phisher transfers the money to a money mule.

  • Cash Out

    the phisher / money mule cashes the money.


We have been analyzing attacks for over a year now. The uAdmin framework offers one of the most sophisticated panels that we have seen so far, mainly targeting Dutch and Belgian citizens.

The power behind this panel is its flexibility: the fact that the phisher can send the victim to whatever page or step he wants. This allows him to specifically point the victim to a phishing page, and request the information or push the action he needs at that moment to reach his goal.

For an attacker this flexibility is very useful. Let’s take the following example: he could first phish a victim to gain access to his bank account. But after that, the victim could be tricked a second time to fill in information, to make a payment above the limit of 5000 euro a day.

The flexibility also allows the attackers to quickly update their panel. If a bank changes its login procedure to prevent phishing attacks, the phishers just modify the fakes as well.

Another important feature is the way takedowns are circumvented. They have split up the actual phishing pages and the command and control panel. The phishing page might be taken down, but the admin panel remains untouched if no further investigation is performed.


Public SharePoint sites - the new open shares

Wesley Neelen - 16 sep 2021
During one of our engagements we were investigating a Microsoft 365 environment. My colleague Rik discovered that many SharePoint sites were publicly available within the organization. We were surprised by the amount sites that were wide open this way. A lot of sensitive information was located on those sites, for example PII-information and passwords for […] Lees verder

Decrypt passwords from Xerox Workcentre config backups

Rik van Duijn - 29 aug 2021
During a recent engagement we encountered Xerox WorkCentre printers using default credentials (admin:1111). Usually it’s just another finding, but this time we noticed the printer had SMB and e-mail credentials configured. For LDAP we usually point the printer to our own IP and get access to the plaintext creds that way. But in the case […] Lees verder

Office 365 audit logging

Rik van Duijn - 19 aug 2021
It’s important to enable audit logging for o365 even if you are not monitoring them actively. Atleast if you get hacked there’s logging to investigate :). The audit log is not always enabled by default, it seems to rely on license levels. However there are some important things to take into consideration. You can enable […] Lees verder

Ransomware, nationale crisis?

Erik Remmelzwaal - 04 aug 2021
Als er 1 digitale dreiging is die veel in het nieuws komt, dan is het ransomware. Er wordt zelfs gesproken van een nationale crisis. Lees verder

Mijlpalen en hoe het gaat

Zolder B.V. - 02 jul 2021
Vandaag gebeurden er op Zolder toch een paar dingen die blogwaardig zijn. Dus prima aanleiding om nog maar eens de laptop open te klappen en te vertellen hoe het gaat. Nieuwe collega’s Het is 1 juli 2021 en we zijn ruim een jaartje onderweg als Zolder. De belangrijkste stap die we vandaag zetten, is dat […] Lees verder

Zolder wordt hoofdsponsor HCZ

Zolder B.V. - 01 jul 2021
Vandaag is bekend geworden dat Zolder de nieuwe hoofdsponsor is van HCZ – Hockeyclub Zevenbergen. De komende drie seizoenen zal het logo van Zolder daarom voorop de shirts van alle HCZ leden prijken. We zijn heel erg trots op deze nieuwe stap voor ons jonge bedrijf, en hopen zo de relatie met onze regio te […] Lees verder

Breda Robotics

Erik Remmelzwaal - 10 mei 2021
Zolder BV is toegetreden tot het netwerk van Breda Robotics. Deze vereniging brengt organisaties bij elkaar die actief zijn rondom robotisering in de regio West-Brabant. Voor Zolder geeft Breda Robotics de mogelijkheid om samen te werken met de robotiseringsindustrie. Te begrijpen hoe die sector precies werk en op welke vlakken cybersecurity kennis kan worden ingezet […] Lees verder

27% .nl domeinen slecht beschermd tegen spoofing

Erik Remmelzwaal - 29 apr 2021
TLDR: We scanden de DNS records van 1,6 miljoen .nl domeinen en vonden uit: 9% is rechtstreeks gekoppeld aan Microsoft 365, daarmee is Microsoft veruit de grootste Google is nr2 en heeft 4% van de domeinen aan zich verbonden, nagenoeg gelijk aan een aantal andere spelers. Van alle mail-enabled domeinen heeft 27% geen SPF record […] Lees verder

Zolder biedt MKB betaalbare en eenvoudige security-app

Zolder B.V. - 12 apr 2021
“Attic voorkomt dat security een luchtbel wordt” Security is bij mkb-bedrijven vaak het ondergeschoven kindje. Ze hebben er de mensen en het budget niet voor. Dat maakt deze doelgroep een aantrekkelijk doelwit voor cybercriminelen. Voor de vier doorgewinterde cybersecurity-experts van start-up Zolder reden om Attic te introduceren. Deze eenvoudige, goedkope en toekomstbestendige app maakt mkb’ers […] Lees verder

Nieuwe Themesong voor Zoldersessions

Erik Remmelzwaal - 13 mrt 2021
Ik vond het tijd worden voor een nieuw liedje voor onze Zoldersessions. Tot nu toe hadden we er een rechtenvrij liedje onder staan, namelijk EVA_失望した, maar wilden toch iets meer 'eigens'. Daar schakelden we Bjørgen van Essen voor in met dit eindresultaat. Dit is hoe dat tot stand kwam. Lees verder

Zolder.App Open Beta

Zolder B.V. - 02 feb 2021
We launched the final beta release to the Google and Apple appstores. Any business running on Microsoft 365 is more than welcome to join. As a beta-tester you will receive a free subscription to the Zolder.App Premium Plan for the remainder of the beta phase, which is scheduled to run through April 30th 2021. Zolder.App […] Lees verder

GGD data is topje van ijsberg

Erik Remmelzwaal - 26 jan 2021
Maandag kwam RTL Nieuws, na onderzoek van Daniël Verlaan, naar buiten met het nieuws dat gestolen data van de GGD online wordt verhandeld door criminelen. Het gaat om data die onderdeel uitmaakt van het bron- en contactonderzoek dat de GGD uitvoert als onderdeel van de bestrijding van Corona/COVID-19. De data bevat gevoelige persoonsgegevens en criminelen […] Lees verder

#CES2021 - We Are Ready!

Erik Remmelzwaal - 06 jan 2021
We are very excited to be part of the #CES2021NL mission! Meet us at CES (Januari 11-14) in our online booth 10609 and see how we solve global challenges with NLTech. Erik Remmelzwaal, Co-Founder & CEO Yes I indeed think we are ready for CES. At this virtual event we will showcase Zolder.App. I am […] Lees verder

Zolder.App Blog 3 - Feedback

Erik Remmelzwaal - 27 nov 2020
Bij het ontwikkelen van een nieuwe dienst, zeker als dit Software-as-a-Service betreft, is feedback vanuit (potentiële) afnemers cruciaal. In het geval van Zolder.App is de doelgroep het MKB. We zijn al gelijk na lancering van het merk Zolder gestart met het vinden van MKB-ers die als tester wilden helpen. Oproep 19-apr-2020 Dit leidde tot best […] Lees verder

Azure App Consent Policies

Rik van Duijn - 11 nov 2020
OAuth consent phishing has been on the rise for a while now. Unsurprisingly, Microsoft has gradually introduced measures to protect from this type of attack. Latest: Risk-Based Step-Up Consent. Lees verder

Honeytokens using Azure Keyvaults

Rik van Duijn - 15 okt 2020
In 2017 Wesley and I gave a presentation at SHA2017 about honey/pot/tokens. We actually planned on building a fully fledged platform. But never came further then the POC phase of that project. This week we got a product demo from the guys at Thinkst, i’ve always loved this way of thinking: let the attacker come […] Lees verder

Zolder.App Blog 2 - Probleem & Oplossing

Zolder B.V. - 08 okt 2020
Het is best een goed idee om voordat je begint met het bouwen van een product of dienst, te weten welk probleem je ermee gaat oplossen. Voor Zolder.App: we lossen het probleem dat MKB-ers slecht beveiligd zijn op door enterprise-niveau security voor hen toegankelijk te maken. In feite zijn er een aantal problemen die we […] Lees verder

Risk of exposed home automation services

Wesley Neelen - 24 sep 2020
At home, I am automating many things for fun. Currently I am using Home Assistant, an incredibly powerful piece of software for automating your home. Regularly I am combining the home automation experiences with security. Home automation is often related to physical things such as changing lights, moving curtains, opening door locks or turning the […] Lees verder

Zoldersessions Studio Setup

Zolder B.V. - 27 aug 2020
Here is the kitlist which we end up with to record our Zoldersessions 🙂 Audio Input 4x Rode Procaster microphone 4x Triton Audio FetHead Microphone PreAmp 4x YellowTec m!ka Mic Boom Focusrite Scarlett 18i8 3rd gen Audio Output 4x Shure SRH840 Headphone ART HeadAmp 4 headphone amplifier Video Input 2x Sony Handycam main cameras Logitech […] Lees verder

Zolder.App blog 1 - het idee

Erik Remmelzwaal - 27 aug 2020
Op Zolder bouwen wij aan een mobiele app die MKB’ers op een baanbrekende manier moet helpen digitaal weerbaar te zijn. We verwachten in het vierde kwartaal van 2020 de app te kunnen lanceren. In deze blogreeks neem ik je mee in de ontwikkeling van Zolder.App. Eigenlijk was er niet 1 idee, maar is Zolder.App het […] Lees verder