Close Menu
    DevStackTipsDevStackTips
    • Home
    • News & Updates
      1. Tech & Work
      2. View All

      10 Benefits of Hiring a React.js Development Company (2025–2026 Edition)

      August 13, 2025

      From Line To Layout: How Past Experiences Shape Your Design Career

      August 13, 2025

      Hire React.js Developers in the US: How to Choose the Right Team for Your Needs

      August 13, 2025

      Google’s coding agent Jules gets critique functionality

      August 13, 2025

      The best smartphones without AI features in 2025: Expert tested and recommended

      August 13, 2025

      GPT-5 was supposed to simplify ChatGPT but now it has 4 new modes – here’s why

      August 13, 2025

      Gemini just got two of ChatGPT’s best features – and they’re free

      August 13, 2025

      I found the easiest way to send files between my Android phone and desktop – and it’s free

      August 13, 2025
    • Development
      1. Algorithms & Data Structures
      2. Artificial Intelligence
      3. Back-End Development
      4. Databases
      5. Front-End Development
      6. Libraries & Frameworks
      7. Machine Learning
      8. Security
      9. Software Engineering
      10. Tools & IDEs
      11. Web Design
      12. Web Development
      13. Web Security
      14. Programming Languages
        • PHP
        • JavaScript
      Featured

      Laravel Boost is released

      August 13, 2025
      Recent

      Laravel Boost is released

      August 13, 2025

      Frontend Standards for Optimizely Configured Commerce: Clean & Scalable Web Best Practices

      August 13, 2025

      Live Agent Escalation in Copilot Studio Using D365 Omnichannel – Architecture and Use Case

      August 13, 2025
    • Operating Systems
      1. Windows
      2. Linux
      3. macOS
      Featured

      OpenAI’s Sam Altman: GPT-5 fails to meet AGI standards amid Microsoft’s fading partnership — “it’s still missing something”

      August 13, 2025
      Recent

      OpenAI’s Sam Altman: GPT-5 fails to meet AGI standards amid Microsoft’s fading partnership — “it’s still missing something”

      August 13, 2025

      You Think You Need a Monster PC to Run Local AI, Don’t You? — My Seven-Year-Old Mid-range Laptop Says Otherwise

      August 13, 2025

      8 Registry Tweaks that will Make File Explorer Faster and Easier to Use on Windows 11

      August 13, 2025
    • Learning Resources
      • Books
      • Cheatsheets
      • Tutorials & Guides
    Home»News & Updates»Classic WTF: NoeTimeToken

    Classic WTF: NoeTimeToken

    June 26, 2025

    Maybe we’ll just try and read a book. That’s a good way to spend your vacation. This can’t possibly go badly! Original —Remy

    Bozen 1 (201)

    “Have you had a chance to look at that JIRA ticket yet?”

    Marge debated pretending she hadn’t seen the Slack message yet—but, if she did, she knew Gary would just walk over to her desk and badger her further. In truth, she didn’t want to look at the ticket: it was a low priority ticket, and worse, it only affected a small fraction of one client’s customers, meaning it was likely to be some weird edge case bug nobody would ever run into again. Maybe if I ignore it long enough, it’ll go away on its own, she thought.

    The client was a bookseller with a small but signifigant-to-them online presence; the software they used to sell books, including your standard e-commerce account functionality, was made by Marge’s company. The bug was somewhere in the password reset feature: some customers, seemingly at random, were unable to use the password reset link the software emailed out.

    Marge pulled up the ticket, looking over the half-hearted triage work that had been done before it landed on her desk to solve. The previous guy had pulled logs and figured out that all the customers who were complaining were using the same ISP based out of Germany. He’d recommended reaching out to them, but had been transferred to another division before he’d gotten around to it.

    When Marge realized that the contact information was all in German, she almost gave up then and there. But with the magic of Google Translate, she managed to get in touch with a representative via email. After a bit of back and forth, she noticed this gem in one of his (translated) replies:

    We want to display mails in our webmail client as close to the original as possible. Since most mails are HTML formatted, the client supports the full HTTP protocol and can display (almost) all HTML tags. Unfortunately, this means that “evil” JS-Content in such mails can do all kinds of stuff in the browser and therefore on the customer’s PC.

    To avert this, all mails are processed by a “SafeBrowsing”-module before they are displayed, to recognize and circumvent such manipulations.
    One of those security measures is the recognition of js-modules that begin with “on…”, since that are mostly js functions that are triggered by some event in the browser. Our “countermeasure” is to just replace “on…” with “no…” before the HTML content is sent to the rendering process.

    Marge frowned at the answer for a bit, something nagging at her mind. “There’s no way,” she murmured as she pulled up the access logs. Sure enough, the url for the reset link was something like https://bookseller.com?oneTimeToken=deadbeef … and the customers in question had accessed https://bookseller.com?noeTimeToken=deadbeef instead.

    A few lines of code and it was resolved: a conditional would check for the incorrect query string parameter and copy the token to the correct query string parameter instead. Marge rolled her eyes, merged her change into the release branch, and finally, at long last, closed that annoying low-priority ticket once and for all.

    [Advertisement]
    Keep the plebs out of prod. Restrict NuGet feed privileges with ProGet. Learn more.

    Source: Read More 

    Facebook Twitter Reddit Email Copy Link
    Previous ArticleFOSS Weekly #25.26: Torvalds-Gates Showdown, Hyprland Premium, Fedora’s 32-bit Debacle, Xfce Themes and More Linux Stuff
    Next Article CVE-2025-6546 – WordPress Drive Folder Embedder Plugin Stored Cross-Site Scripting Vulnerability

    Related Posts

    News & Updates

    The best smartphones without AI features in 2025: Expert tested and recommended

    August 13, 2025
    News & Updates

    GPT-5 was supposed to simplify ChatGPT but now it has 4 new modes – here’s why

    August 13, 2025
    Leave A Reply Cancel Reply

    For security, use of Google's reCAPTCHA service is required which is subject to the Google Privacy Policy and Terms of Use.

    Continue Reading

    CVE-2025-49747 – Azure Machine Learning Privilege Escalation

    Common Vulnerabilities and Exposures (CVEs)

    Distribution Release: Raspberry Pi OS 2025-05-06

    News & Updates
    Global Cybersecurity Agencies Warn of Spyware Targeting Uyghur, Tibetan, and Taiwanese Communities

    Global Cybersecurity Agencies Warn of Spyware Targeting Uyghur, Tibetan, and Taiwanese Communities

    Development

    Salesforce AI Introduces CRMArena-Pro: The First Multi-Turn and Enterprise-Grade Benchmark for LLM Agents

    Machine Learning

    Highlights

    Distribution Release: MX Linux 23.6

    April 14, 2025

    The DistroWatch news feed is brought to you by TUXEDO COMPUTERS. The MX Linux project has announced a new version, MX Linux 23.6, which is based on Debian 12. “MX Linux 23.6 is the sixth refresh of our MX 23 release, consisting of bug fixes, kernel updates and application updates since our original release of MX 23. If you….

    CVE-2025-48147 – CryptoCloud Crypto Payment Gateway Missing Authorization Vulnerability

    June 9, 2025

    Smashing Security podcast #412: Signalgate sucks, and the quandary of quishing

    April 9, 2025

    Critical ABB EIBPORT Flaw: Update Now to Prevent Building Automation Hijacks!

    June 4, 2025
    © DevStackTips 2025. All rights reserved.
    • Contact
    • Privacy Policy

    Type above and press Enter to search. Press Esc to cancel.