T

Tavis Ormandy

lock.cmpxchg8b.com · Personal blog · on HN since 2010

Tavis Ormandy, a Google Project Zero security researcher, writes about vulnerabilities, password managers and getting old software like Lotus 1-2-3 running on Linux.

What HN saysHN links it for his password manager writeup, his Lotus 1-2-3 on Linux port, and his past vulnerability findings in popular password managers.
112HN people shared it
78linked it in comments
59stories submitted
4.3Kstory points
3 months agolast shared
2010people per year2026

Most-shared posts

  1. 1
    Password Managers
    14 people · 460 points · first shared 2021 · 330 comments on HN
  2. 2
    Lotus 1-2-3 For Linux
    11 people · 709 points · first shared 2022 · 83 comments on HN
  3. 3
    You don’t need reproducible builds
    9 people · 138 points · first shared 2020 · 172 comments on HN
  4. 4
  5. 5
    Lotus 1-2-3 arbitrary resolution
    7 people · 535 points · first shared 2021 · 123 comments on HN
  6. 6
    Zenbleed
    7 people · 133 points · first shared 2023 · 22 comments on HN
  7. 7
    Fun with Constrained Programming
    7 people · 3 points · first shared 2012 · discussion on HN
  8. 8
    Sophailv2.pdf
    6 people · first shared 2012
  9. 9
    WordPerfect for UNIX (1992)
    5 people · 243 points · first shared 2022 · 127 comments on HN
  10. 10
    Reptar
    5 people · 7 points · first shared 2023 · discussion on HN
  11. 11
    Console Spreadsheets
    4 people · 52 points · first shared 2020 · 11 comments on HN
  12. 12
    Troubleshooting: Terminal Lag
    3 people · 239 points · first shared 2024 · 55 comments on HN
  13. 13
    Quest for my perfect watch
    3 people · 131 points · first shared 2022 · 176 comments on HN
  14. 14
    Rediscovering Lotus Agenda (MS-DOS, 1989)
    3 people · 76 points · first shared 2020 · 11 comments on HN
  15. 15
    You don’t need SMS-2FA
    3 people · 36 points · first shared 2020 · 51 comments on HN

What HN people wrote when they linked it

microtonal · 2026-07-26
So, once the challenges are solved by the residential proxies (with optimized native implementations [1]). Some unsuspecting TV owner is paying with their electricity bill (not the companies doing the scraping) and we all suffer through challenges. Yes, great outcome! </s> [1] https://lock.cmpxchg8b.com/anubis.html
advisedwang · 2026-05-18
keepass files + syncthing works very nicely for me. For non technical people, I just recommend to use the browser built in password managers. traviso has a good writeup why: https://lock.cmpxchg8b.com/passmgrs.html
stevekemp · 2026-03-10
Tavis Ormandy made a great post on Lotus 1-2-3 For Linux: https://lock.cmpxchg8b.com/linux123.html Might be interesting to others interested in 1-2-3.
pridkett · 2024-07-05
This is great and probably a nice complement if I can get it working with my Visidata[0] workflow for data files. If you’re looking just for spreadsheets, Travis Ormandy somehow managed to get Lotus 1-2-3 to run on Linux a few years ago[1]. It’s a neat comparison point. [0] https://www.visidata.org/ [1] https://lock.cmpxchg8b.com/linux123.html
forty · 2024-04-27
There can be vulnerabilities, this is clearly the hottest attack surface of password managers. I remember a few years ago Tavis Ormandy from Google Project Zero found such vulnerabilities in a bunch of the most popular password managers which allowed to steal credentials from a rogue website. I'd still recommend using a password manager, as overall and in practice the risk of phishing and (re)using (weak) passwords is far greater than this kind of rare vulnerabilities (and also I work for a company that makes a password manager ^^) See https://lock.cmpxchg8b.com/passmgrs.html if you'd like to know more
ninjin · 2023-07-25
There is further information from de Raadt on impact and mitigations [1]. Hearing that the microcode fixes from AMD does not cover all CPUs that are likely to be vulnerable is not great. Reading “[W]e are setting DE_CFG bit 9 on all the models that we think have the bug” is comforting and exactly what I would expect from the OpenBSD developers, as it follows what happened back around Heartbleed and it is one of the workarounds mentioned by the Zenbleed security researchers [2]. [1]: https://marc.info/?l=openbsd-misc&m=169025404406996&w=2 [2]: https://lock.cmpxchg8b.com/zenbleed.html#solution
Barrin92 · 2023-07-04
> Just wait until your bank disables password autofill and paste on their site, and no extension can override it that would be a fantastic day because autofill based on html/js hackery by extensions is one of the biggest security risks there is. It's why Extensions like Bitwarden caution you to have autofill turned on. Tavis Ormandy (security researcher) demonstrated this last year in a blog post https://lock.cmpxchg8b.com/passmgrs.html
lproven · 2023-03-14
WordPerfect for UNIX™ now runs natively on Linux thanks to the amazing Tavis Ormandy's work, and he has got it generating print previews in the terminal using sixels: https://lock.cmpxchg8b.com/wordperfect.html
chickin · 2022-08-27
Obligatory https://lock.cmpxchg8b.com/passmgrs.html#conclusion I don't follow the advice, and instead choose pass(1) with Yubikey touch-to-decrypt. Being offline, this removes a large attack surface.
Many think integrated password managers create more vulnerabilities than they solve. https://lock.cmpxchg8b.com/passmgrs.html is a reasonable overview of this. > So this article is bringing attention to a weakness in the browser’s built-in password managers, and suggesting a very viable and easy-to-adopt solution. Because many actual experts disagree it is a weakness > Why the strong criticism of this article? The advice tries to make it out like browser suppliers are doing this to lower security for some unknown reason, whereas actually their model is safer than what is recommended. It is possible to argue against browser suppliers here, but you need to look at their arguments for doing it that way. This article doesn't do that.
JNRowe · 2022-02-11
If it meant we got more amazing stories like the Lotus 1-2-3 one¹, then I'm all for dosemu. ¹ https://lock.cmpxchg8b.com/lotus123.html
bruckie · 2021-08-08
Tavis Ormandy (of Google Project Zero) has a pretty convincing post arguing that relying on browser extensions that modify the DOM (which includes [almost?] all password managers) is a bad idea: https://lock.cmpxchg8b.com/passmgrs.html (he recommends using your browser's built-in password manager, which isn't as convenient but is much more secure)
taviso · 2015-10-08
It's definitely a neat demonstration that he can produce a collision for these favourable "neutral-bit" IV's relatively cheaply. I suppose the next steps are to find two inputs that produce favourable IV's, then repeat this process for those, and that seems like it's getting really close. Stevens actually already has the best near-collision in non-reduced SHA-1 I know about from this paper: http://marc-stevens.nl/research/papers/EC13-S.pdf I made a quick visualization of it here, it looks pretty cool: https://lock.cmpxchg8b.com/shatter/visualize.html?stevens=1 I also added the Shappening vectors: https://lock.cmpxchg8b.com/shatter/visualize.html?shappening=1 It's funny that they actually collide around R74, then he has to diverge again so that when you add the IV (part of the process of creating the IV for the next block) they collide.
zAy0LfpBZLC8mAC · 2014-02-21
That is somewhat of an unfortunate myth. Computer security is not a matter of withstanding force (where "adding an additional wall" might help) but one of correct logic. One of the best ways to achieve the latter is to get rid of unnecessary logic altogether. AV software does the opposite: It adds tons of more logic that gets into contact with untrusted data, and thus adds exploitation risk to the system (aka "attack surface"). Also, there is a very specific reason why AV really is more an annoyance filter than a security measure: It's a blacklist. For some practical examples for why AV is risky, see also: https://lock.cmpxchg8b.com/sophail.pdf https://lock.cmpxchg8b.com/sophailv2.pdf
Nathan2055 · 2026-05-03
The funniest part about WordPress is that you can usually achieve at least a 50% speed boost or more by adding a plugin that just minifies and caches the ridiculous number of dynamic CSS and JS files that most themes and plugins add to every page. Set those up with HTTP 103 Early Hints preload headers (so the browser can start sending subresource requests in the background before the HTML is even sent out, exactly the kind of thing HTTP/2 and /3 were designed to make possible) and then throw Cloudflare or another decent CDN on top, and you're suddenly getting TTFBs much closer to a more "modern" stack. The bizarre thing is that pretty much no CMS, even the "new" ones, seems to automate all of that by default. None of those steps are that difficult to implement, and provide a serious speed boost to everything from WordPress to MediaWiki in my experience, and yet the only service that seems to get close to offering it is Cloudflare. Even then, Cloudflare's tooling only works its best if you're already emitting minified and compressed files and custom written preload headers on the origin side, since the hit on decompressing all the origin traffic to make those adjustments and analyses is way worse for performance than just forwarding your compressed responses directly, hence why they removed Auto Minify[1] and encourage sending pre-compressed Brotli level 11 responses from the origin[2] so people on recent browsers get pass-through compression without extra cycles being…
rasz · 2024-12-02
>unoptimized memcpy could anyone do any better on 68000? My incomplete history of CPU dedicated fast paths for moving data: - 1982 Intel 186/286 'rep movsw' at theoretical 2 cycles per byte (I think its closer to 4 in practice). Brilliant, then intel drops the ball for 20 years :| - 1986 WDC W65C816 Move Memory Negative (MVN), Move Memory Positive (MVP) at hilarious 7 cycles per byte. Slower than unrolled code, 2x slower than unrolled code using 0 page. Afaik no loop buffer meant its re-fetching whole instruction every loop. - 1987 NEC TurboGrafx-16/PC Engine 6502 clone by HudsonSoft HuC6280 Transfer Alternate Increment (TAI), Transfer Increment Alternate (TIA), Transfer Decrement Decrement (TDD), Transfer Increment Increment (TII) at hysterical 6 cycles per byte plus 17 cycles startup. (17 + 6x) = ~160KB/s at 7.16 MHz CPU. For comparison IBM XT with 4.77 MHz NEC V20 does >300KB/s - 1993 Pentium 'rep movsd' at theoretical 4 bytes per cycle, 0.31 cycles per byte in practice http://www.pennelynn.com/Documents/CUJ/HTML/14.12/DURHAM1/DURHAM.HTM - 1995 Pentium Pro "fast string mode" strongly hinted at REP MOVS as the optimal way to copy memory. - 1997 Pentium MMX 'rep movsd' 0.27 cycles per byte. Mem copy with MMX registers 0.29 cycles per byte. - 2000 SSE2 optimized copy hack. - 2008 AVX optimized copy hack at ~full L2/memory bus speed for large enough transfers. - 2012 Ivy Bridge Enhanced REP MOVSB (ERMSB), but funnily still slower than even the SSE2 variants. - 2019…
leftcenterright · 2024-07-06
> For the majority of people, storing TOTP in 1Password is well within their risk tolerance. There will always be those of you who will trade that convenience because you want or require the added protection of true 2FA. And to those faithful hardware key crew members: Think of your true second factor as less “extra layer of security,” and more granular protection that will apply only if you’re subject to certain forms of attack. this is the crux really. Especially when a web based password manager is in use [0], this is not at all within risk tolerance for people really striving for a long-term threat model which they do not need to revisit every couple of years. Buying multiple hardware tokens and keeping one authenticator/TOTP app on phone is very practical the best you can do and it is secure, loss-proof and will last for a long time. Most services allow you to add multiple types of 2FA devices. 0. https://lock.cmpxchg8b.com/passmgrs.html
mjg59 · 2026-08-09
https://lock.cmpxchg8b.com/wordperfect.html describes getting the UNIX release of Word Perfect running on modern Linux. There was a SCO release of Word in 1990, so plausibly that could be fudged into a similar setup?
konart · 2026-06-14
Anubis: https://github.com/TecharoHQ/anubis blog post (pretty sure I've seen it on HN before) on the topic: https://lock.cmpxchg8b.com/anubis.html
sedatk · 2026-05-04
@taviso had claimed the exact opposite: https://lock.cmpxchg8b.com/passmgrs.html
cachius · 2025-12-12
This dance to get access is just a minor annoyance for me, but I question how it proves I’m not a bot. These steps can be trivially and cheaply automated. I think the end result is just an internet resource I need is a little harder to access, and we have to waste a small amount of energy. From Tavis Ormandy who wrote a C program to solve the Anubis challenges out of browser https://lock.cmpxchg8b.com/anubis.html via https://news.ycombinator.com/item?id=45787775 Guess a mix of Markov tarpits and llm meta instructions will be added, cf. Feed the bots https://news.ycombinator.com/item?id=45711094 and Nephentes https://news.ycombinator.com/item?id=42725147
zeropointsh · 2025-08-28
You could go viral[1] for implementing a Monero Miner[2][3] in Anubis. The check no longer denies someone; it lets EVERYONE in once they've paid the price (mining). This now makes false positives impossible, solving a lot of problems[4]. [1] https://torrentfreak.com/the-pirate-bay-website-runs-a-cryptocurrency-… [2] https://lock.cmpxchg8b.com/anubis.html [Where they bring up CoinHive and JSEcoin]. [3] https://github.com/JSEcoin/website [4] https://anubis.techaro.lol/blog/2025/cpu-core-odd/
jayrwren · 2025-08-20
literally the top link when I search for his exact text "why are anime catgirls blocking my access to the Linux kernel?" https://lock.cmpxchg8b.com/anubis.html Maybe travis needs more google-fu. maybe that includes using duckduckgo?
JosephRedfern · 2025-08-12
There's a really interesting article from Tavis Ormandy about the instruction set and virtual machine used in RAR: https://blog.cmpxchg8b.com/2012/09/fun-with-constrained-programming.ht… The docs for the toolchain he implemented (https://github.com/taviso/rarvmtools) allude to a number of bugs, but doesn't sound (??) like they're related to this vulnerability.
mananaysiempre · 2025-07-18
Deliberately so, moreover, because distributing object files for relinking used to be common[1]. [1] https://lock.cmpxchg8b.com/linux123.html
cpach · 2024-05-06
WordPerfect is an interesting example: https://lock.cmpxchg8b.com/wordperfect.html WordStar is another one, used by George RR Martin et al: https://arstechnica.com/information-technology/2017/03/wordstar-a-writ…
explodingwaffle · 2023-11-29
Anyone else feeling the frequency illusion with rep movsb? (https://lock.cmpxchg8b.com/reptar.html)
loeg · 2023-11-14
Taviso's blog (and of course it is Tavis) is a lot less dry and a lot more interesting: https://lock.cmpxchg8b.com/reptar.html
tonfa · 2023-11-14
The blog has a link to https://lock.cmpxchg8b.com/zenbleed.html#discovery which presents the concept.

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close