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
11:04 pm, Jun 23, 2025
weather icon 17°C
L: 15° | H: 17°
broken clouds
Humidity: 57 %
Pressure: 1015 mb
Wind: 6 mph WNW
Wind Gust: 15 mph
UV Index: 0
Precipitation: 0 mm
Clouds: 54%
Rain Chance: 0%
Visibility: 10 km
Sunrise: 4:43 am
Sunset: 9:21 pm
DailyHourly
Daily ForecastHourly Forecast
Tomorrow 10:00 pm
weather icon
15° | 17°°C 0 mm 0% 14 mph 76 % 1015 mb 0 mm/h
Wed Jun 25 10:00 pm
weather icon
16° | 28°°C 0.21 mm 21% 10 mph 86 % 1013 mb 0 mm/h
Thu Jun 26 10:00 pm
weather icon
17° | 24°°C 1 mm 100% 17 mph 94 % 1018 mb 0 mm/h
Fri Jun 27 10:00 pm
weather icon
15° | 27°°C 0 mm 0% 15 mph 71 % 1021 mb 0 mm/h
Sat Jun 28 10:00 pm
weather icon
17° | 29°°C 0.2 mm 20% 12 mph 85 % 1025 mb 0 mm/h
Tomorrow 1:00 am
weather icon
14° | 16°°C 0 mm 0% 10 mph 61 % 1015 mb 0 mm/h
Tomorrow 4:00 am
weather icon
13° | 14°°C 0 mm 0% 9 mph 73 % 1014 mb 0 mm/h
Tomorrow 7:00 am
weather icon
16° | 16°°C 0 mm 0% 11 mph 76 % 1014 mb 0 mm/h
Tomorrow 10:00 am
weather icon
18° | 18°°C 0 mm 0% 12 mph 72 % 1013 mb 0 mm/h
Tomorrow 1:00 pm
weather icon
20° | 20°°C 0 mm 0% 14 mph 71 % 1013 mb 0 mm/h
Tomorrow 4:00 pm
weather icon
23° | 23°°C 0 mm 0% 12 mph 57 % 1011 mb 0 mm/h
Tomorrow 7:00 pm
weather icon
24° | 24°°C 0 mm 0% 12 mph 49 % 1012 mb 0 mm/h
Tomorrow 10:00 pm
weather icon
20° | 20°°C 0 mm 0% 9 mph 68 % 1013 mb 0 mm/h
Name Price24H (%)
Bitcoin(BTC)
€90,498.31
4.49%
Ethereum(ETH)
€2,043.25
7.34%
Tether(USDT)
€0.87
0.03%
XRP(XRP)
€1.82
6.28%
Solana(SOL)
€123.10
9.32%
USDC(USDC)
€0.87
0.01%
Dogecoin(DOGE)
€0.138417
8.26%
Shiba Inu(SHIB)
€0.000010
9.64%
Pepe(PEPE)
€0.000009
10.61%
Scroll to Top