Fake password manager coding test used to hack Python developers

Share:

Members of the North Korean hacker group Lazarus posing as recruiters are baiting Python developers with coding test project for password management products that include malware.

The attacks are part of the ‘VMConnect campaign’ first detected in August 2023, where the threat actors targeted software developers with malicious Python packages uploaded onto the PyPI repository.

According to a report from ReversingLabs, which has been tracking the campaign for over a year, Lazarus hackers host the malicious coding projects on GitHub, where victims find README files with instructions on how to complete the test.

The directions are meant to provide a sense professionalism and legitimacy to the whole process, as well as a sense of urgency.

ReversingLabs found that the North Koreans impersonate large U.S. banks like Capital One to attract job candidates, likely offering them an enticing employment package.

Further evidence retrieved from one of the victims suggests that Lazarus actively approaches their targets over LinkedIn, a documented tactic for the group.

Find the bug

The hackers direct candidates to find a bug in a password manager application, submit their fix, and share a screenshot as proof of their work.

The project files
The project files

The README file for the project instruct the victim first to execute the malicious password manager application (‘PasswordManager.py’) on their system and then start looking for the errors and fixing them.

README file with the project instructions
README file with the project instructions
Source: ReversingLabs

That file triggers the execution of a base64 obfuscated module hidden in the’_init_.py’ files of the ‘pyperclip’ and ‘pyrebase’ libraries.

The obfuscated string is a malware downloader that contacts a command and control (C2) server and awaits for commands. Fetching and running additional payloads is within its capabilities.

The base64 obfuscated string
The base64 obfuscated string
Source: ReversingLabs

To make sure that the candidates won’t check the project files for malicious or obfuscated code, the README file require the task to be completed quickly: five minutes for building the project, 15 minutes to implement the fix, and 10 minutes to send back the final result.

This is supposed to prove the developer’s expertise in working with Python projects and GitHub, but the goal is to make the victim skip any security checks that may reveal the malicious code.

Introducing a pressing time factor
Introducing a pressing time factor for candidates
Source: ReversingLabs

ReversingLabs has found evidence that the campaign was still active on July 31 and believe that it is ongoing.

Software developers receiving job application invites from users on LinkedIn or elsewhere should be wary about the possibility of deception and take into consideration that the profiles contacting them could be fake.

Before receiving the assignment, try to verify the other person’s identity and independently confirm with the company that a recruitment round is indeed underway.

ADVERTISING

Take the time to scan or carefully review the given code and only execute it in safe environments such as virtual machines or sandboxing applications.

Bill Toulas

Leave a Comment

Your email address will not be published. Required fields are marked *

loader-image
London, GB
12:12 pm, Jun 22, 2025
weather icon 25°C
L: 24° | H: 27°
few clouds
Humidity: 50 %
Pressure: 1013 mb
Wind: 15 mph WSW
Wind Gust: 0 mph
UV Index: 0
Precipitation: 0 mm
Clouds: 20%
Rain Chance: 0%
Visibility: 10 km
Sunrise: 4:43 am
Sunset: 9:21 pm
DailyHourly
Daily ForecastHourly Forecast
Today 10:00 pm
weather icon
24° | 27°°C 0 mm 0% 17 mph 64 % 1013 mb 0 mm/h
Tomorrow 10:00 pm
weather icon
15° | 23°°C 0.2 mm 20% 15 mph 81 % 1016 mb 0 mm/h
Tue Jun 24 10:00 pm
weather icon
14° | 26°°C 0 mm 0% 16 mph 77 % 1015 mb 0 mm/h
Wed Jun 25 10:00 pm
weather icon
16° | 27°°C 0 mm 0% 9 mph 86 % 1013 mb 0 mm/h
Thu Jun 26 10:00 pm
weather icon
17° | 24°°C 1 mm 100% 15 mph 95 % 1018 mb 0 mm/h
Today 1:00 pm
weather icon
24° | 25°°C 0 mm 0% 15 mph 50 % 1013 mb 0 mm/h
Today 4:00 pm
weather icon
21° | 24°°C 0 mm 0% 17 mph 48 % 1013 mb 0 mm/h
Today 7:00 pm
weather icon
21° | 22°°C 0 mm 0% 13 mph 54 % 1012 mb 0 mm/h
Today 10:00 pm
weather icon
16° | 16°°C 0 mm 0% 10 mph 64 % 1012 mb 0 mm/h
Tomorrow 1:00 am
weather icon
16° | 16°°C 0 mm 0% 13 mph 76 % 1011 mb 0 mm/h
Tomorrow 4:00 am
weather icon
16° | 16°°C 0.2 mm 20% 13 mph 81 % 1011 mb 0 mm/h
Tomorrow 7:00 am
weather icon
15° | 15°°C 0.2 mm 20% 13 mph 60 % 1013 mb 0 mm/h
Tomorrow 10:00 am
weather icon
17° | 17°°C 0 mm 0% 13 mph 46 % 1014 mb 0 mm/h
Name Price24H (%)
Bitcoin(BTC)
€88,946.20
-1.25%
Ethereum(ETH)
€1,962.44
-7.22%
Tether(USDT)
€0.87
0.01%
XRP(XRP)
€1.77
-4.91%
Solana(SOL)
€115.70
-6.28%
USDC(USDC)
€0.87
0.00%
Dogecoin(DOGE)
€0.134689
-5.14%
Shiba Inu(SHIB)
€0.000010
-5.04%
Pepe(PEPE)
€0.000008
-9.19%
Peanut the Squirrel(PNUT)
€0.218233
13.10%
Scroll to Top