Skip to content
All work
Travel · Automation and security

Automation resilient to advanced protection

Analysis tooling and automation supporting ticketing flows in environments protected by sophisticated anti-bot systems.

eSky

2k+

daily bookings for one airline across supported flows

Project context

The problem that required change

Search and ticketing processes had to work with integrations protected by Akamai, AWS WAF, Accertify and ThreatMetrix, among others.

Every protection change required rapid analysis, credible browser-behaviour reproduction and a solution reusable by teams developing ticketing workers.

Scope of responsibility

From diagnosis to delivery

  • 01Analysing and deobfuscating JavaScript mechanisms used by anti-bot systems
  • 02Building Bot Manager tools and payload decoders
  • 03Developing fingerprint-evasion methods for Canvas, Fonts, WebRTC and TLS
  • 04Implementing scraping scenarios and sending data to BigQuery
  • 05Modifying Browserless and running solutions on GCP clusters
Process

Decisions organised into a controlled process

  1. 01

    Analyse traffic

    Inspect sessions, payloads and protection behaviour using traffic-analysis and AST tooling.

  2. 02

    Model the mechanism

    Decode and document the logic required to reproduce credible client behaviour.

  3. 03

    Build team tooling

    Create data generators, decoders and reusable methods for other delivery teams.

  4. 04

    Run at scale

    Integrate with ticketing scenarios, add monitoring and operate the infrastructure on GCP.

Measurable outcomes

2k+

daily bookings for one airline across supported flows

4

major protection families analysed within the project

GCP

scalable scenario execution and data processing

TypeScript · Node.js · Babel · Esprima · Puppeteer · Fastify · BigQuery · GCP

Next step

Facing a similar challenge? Let’s discuss a concrete outcome.

Share what is currently limiting your product or team. I’ll reply directly with a practical first step.

Discuss your project

Next case study

From five hours to one and a half

Some Say · Aleksander Szmigiel

Facing a difficult technical problem?

Email me