Habr•August 6, 2026•🇷🇺Translated from Russian

Step-Up Authentication vs 2FA: Implementing Additional Verification for Sensitive Operations in Corporate Systems

Two-factor authentication (2FA) has become a standard for protecting corporate systems, yet it often proves insufficient for handling personal data or other high-risk operations. While 2FA verifies identity only at login and then grants access for the duration of the trusted session, modern attacks increasingly target already-active sessions. This limitation prompted the adoption of Step-Up Authentication, which requests additional confirmation precisely when a user attempts a sensitive action.

Why Standard 2FA Falls Short

Common second factors include SMS or Email OTP, TOTP from authenticator apps such as Yandex Key, Google Authenticator, Microsoft Authenticator, or Authy, and other one-time codes. These methods protect the login process effectively but do not re-verify identity during an ongoing session. As a result, prolonged sessions or shared devices can expose critical resources without further checks.

What Step-Up Authentication Provides

Step-Up Authentication differs by triggering extra verification only at the point of elevated-risk operations. Typical scenarios include work on shared devices, long-lived sessions, or access requests that demand a higher trust level than the initial login provided. In the described project, this mechanism was applied specifically when users attempted to retrieve salary information, requiring re-authentication only for selected APIs.

The technical foundation relies on ACR (Authentication Context Class Reference) values embedded in tokens. These values indicate whether login occurred with password alone or with an additional OTP. Applications inspect the ACR claim and either grant access or redirect the user for further authentication.

Project Implementation Challenges and Solution

Although Keycloak and WSO2 both support Step-Up Authentication out of the box, the project’s business requirements exceeded standard capabilities. The PIN code had to remain valid for six months, external systems needed to treat it as a user password, and verification had to occur at a separate gateway layer independent of the Identity Provider. These constraints made heavy customization of WSO2 impractical.

The team therefore created an independent PIN-code service and a dedicated gateway-2fa microservice. Only requests to protected APIs pass through this gateway; all other traffic follows the normal route. The flow works as follows:

  • The web application directs the user to the PIN service to generate a code.
  • The service creates an encrypted PIN, stores it, and delivers it via email and SMS.
  • After successful entry, the service issues a signed cookie with a defined TTL confirming Step-Up completion.
  • On subsequent protected calls, gateway-2fa validates the cookie and cross-checks key JWT fields; mismatches result in denial of access.

User Experience and Monitoring

From the user’s perspective, the additional step appears only when accessing protected data. A 401 response prompts PIN entry; successful validation sets the cookie, after which the user can work with sensitive resources until the TTL expires (set to 20 minutes in this implementation). Incorrect PIN attempts simply keep the resource inaccessible.

Usage statistics are collected in Matomo and technical metrics in ELK, enabling early detection of performance issues or unusual patterns.

Key Considerations for Deployment

Successful rollout requires careful definition of TTL duration, strong encryption for stored PINs, load testing of the additional service, and logging that supports incident investigation without exposing sensitive user data. The resulting architecture strengthens protection for critical operations while preserving a seamless login experience and supporting Zero Trust principles.

Related articles

Habr•Other

Prod is Down: Free gVisor-Based Simulator Gives Strangers Root Access for Realistic Linux Incident Training

A Russian systems administrator has launched Prod is Down, a free online platform that lets users practice real incident response by granting them root consoles on deliberately broken Linux servers. The tool currently offers 13 scenarios covering PostgreSQL failures, OOM Killer events, full disks, expired certificates, nginx 502 errors, inode exhaustion, DNS issues, and open file limits. Each exercise runs inside gVisor sandboxes with strict resource limits, internal-only networking, and automated verification that checks service health rather than player commands. The author implemented an emulated systemd in Python so trainees can use familiar systemctl and journalctl commands without running a real init system. Multiple layers of isolation, including overlay filesystem tweaks and size monitoring, prevent abuse while still allowing sudo and realistic debugging. The platform records three random variants per scenario so memorized fixes from previous runs do not work on subsequent attempts.

Habr•Other

Home Lab Guide: Deploying Active Directory, Windows 7 Client and ELK Stack for Security Logging

A detailed tutorial walks readers through building an isolated VirtualBox lab featuring a Windows Server 2019 domain controller with DNS and DHCP, a Windows 7 client joined to the domain, and an ELK stack running Elasticsearch, Logstash and Kibana 9.4.2. The guide covers creation of organizational units, Group Policy Objects for advanced auditing, and configuration of Winlogbeat 7.17 to forward Security, System and Application logs to Logstash. Special attention is given to common pitfalls such as missing GPO extension attributes that prevent audit policies from applying and memory constraints when running the full ELK stack on limited RAM. The author emphasizes that Windows 7 is unsupported and should only be used in isolated lab networks. All steps are provided with exact PowerShell commands, netplan configurations, and Logstash pipeline examples suitable for a 192.168.100.0/24 NAT network.

Securitylab•Other

Building Your First Home Network Lab: Essential Tools and Experiments to Understand Corporate Networks

A cybersecurity professional without network knowledge resembles a guard without a building blueprint, spotting alarms but unable to trace the intruder. Setting up a personal lab on a standard computer bridges this gap through virtualization and hands-on practice with protocols and attacks. The guide recommends GNS3 for topology emulation, VirtualBox or VMware for running Windows and Linux workstations, Cisco Packet Tracer for quick simulations, Wireshark for traffic analysis, and draw.io for diagramming. Key experiments include configuring Cisco IOS routers with IP addressing, testing default gateways, observing ARP requests and replies, triggering broadcast storms via switch loops, and enabling STP to prevent loops. The lab demonstrates how legacy protocols like ARP expose networks to spoofing and why segmentation with VLANs and firewalls matters. Resources from CyberED provide demo access to courses on SOC analysis, penetration testing, and AI applications in security to extend learning.

Habr•Other

PSLC and Agent-Ops: From Product Support to Infrastructure Transformation

Sergey Zhitinsky, founder of Git in Sky, attended the OPS Talk by Sber meetup on October 19 and discussed the PSLC methodology with architect Alexander Shapovalov. PSLC, or Product Service Lifecycle, outlines two loops for restoring services immediately and improving reliability to prevent recurrence through teams, knowledge, and platform support. Agent-Ops focuses on eight detailed steps for individual infrastructure tasks: intention, evidence collection, diagnostics, planning, approval, controlled change, verification, and lessons learned. The article illustrates their complementary use in a scenario where post-release log growth fills a database disk, requiring both service restoration and root-cause fixes. Both approaches emphasize knowledge retention, action control, and human accountability, though Agent-Ops v0.5.1 mandates explicit human approval and separate execution for production changes. PSLC suits larger organizations with shared platforms, while Agent-Ops targets smaller teams handling infrastructure operations with AI agents.