lunasec
log4shell-tools
Our great sponsors
lunasec | log4shell-tools | |
---|---|---|
36 | 8 | |
1,406 | 84 | |
1.2% | - | |
5.5 | 4.5 | |
2 months ago | 19 days ago | |
TypeScript | Go | |
GNU General Public License v3.0 or later | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
lunasec
- Guys, I taught ChatGPT to browse the internet and it is bloody amazing.
-
Ask HN: Those making $0/month or less on side projects – Show and tell
LunaTrace: https://lunatrace.lunasec.io/
Premise: Open Source[0] alternative to GitHub Dependabot and `npm audit` that focuses on helping you prioritize where to patching first (only 0.1% of CVEs are used in cyber attacks).
Short YouTube demo: https://www.youtube.com/watch?v=ugdSyR2L6sY
A newer video showing off the whole Static Analysis engine: https://www.youtube.com/watch?v=vPd4MSUJ98M
Price: $0 for Open Source repos. We're hoping to charge for private repos in the future, but we need to build out the billing features first lol. (We're at $0 in revenue currently.)
If you are filled with rage because of CVEs spamming you, come vent your frustrations on Discord: https://discord.gg/2EbHdAR5w7
We're looking for early customers that are interested in working with us. My email is on my profile. Cheers!
[0]: Source Code, https://github.com/lunasec-io/lunasec/
-
Log4Shell Still Has Sting in the Tail
(Note: I'm the person that coined the term "Log4Shell")
You may be surprised when I tell you what the Apache Software foundations yearly budget is. You'd think for software that is used by practically every Fortune 500 company and most governments, it would be something reasonable. Maybe a few hundred million dollars a year to pay for a reasonable full-time staff, right?
It turns out... it's about $2 million a year. (Wikipedia[0])
This helps explain to me why the devs of Log4j directly uploaded the file "JNDIExploit.java" (the POC) to GitHub while they were patching. (Here is a full analysis and guide about how to prevent that[1].)
They're not security people. They're volunteers working on this in addition to their full-time job.
What kind of brave soul wants to trudge through and maintain log4j in their spare time for zero compensation? I appreciate the people that are capable of doing that, but I think they are rare!
This whole entire vulnerability was eye opening for everybody and I have actually spent the last year building tooling on GitHub to help fix the problems that Log4Shell exposed.
If you have 2 seconds to try that out or just Star the repo[2], it would be very helpful!
0: Log4j revenue https://en.wikipedia.org/wiki/The_Apache_Software_Foundation
1: "How to Discuss and Fix Vulnerabilities in Open Source" https://www.lunasec.io/docs/blog/how-to-mitigate-open-source...
2: GitHub project building better dependency patching tools https://github.com/lunasec-io/lunasec
-
Malicious Python Packages Replace Crypto Addresses in Developer Clipboards
If anybody is curious to replicate this type of analysis, we should connect because I've been working a project to build an engine for this type of analysis for about a year now. GitHub Repo
-
Dozens of malicious PyPI packages discovered targeting developers
It is possible to set your registry in NPM via the "npmrc" file. That will let you hit the specified HTTP server whenever you run commands like "npm install".
I know this is also possible for Python because we did it at Uber. I don't remember the specific details anymore though.
In either case though, a lot of people have written proxies for this use case (I helped write one for NPM at Uber). Companies like Bytesafe and Artifactory also exist in this space.
We're working on something similar that's on GitHub here: https://github.com/lunasec-io/lunasec
Proxy support isn't built out yet but the data is all there already.
-
Preventing the bait and switch by open core software companies
The current system is broken. I don't think I agree with everything in the post, but I'm excited to see movement in this space given that this is a space I spend a lot of time thinking about. (I'll expand on that below)
Even if I disagree with parts of this, this is still one of the most interesting things that I've read around OSS licensing in a minute! Having actual VC money behind this movement is awesome.
For context: I run an Open Source company that's YC + VC-backed. We use are using a hybrid of Apache and Business Source License (BSL, a "non-compete" license that converts to Apache in 2-3 years). Our license file[0] has context about my thought process around this, but I still am not totally happy with it. (BSL isn't an "OSI-Compatible", even if it does feel like the "best" license currently.)
To come to that conclusion, I've read both Heather Meeker's book, "Open (Source) for Business"[1], multiple times now and I've also blogged about this topic[2] before.
All of that is to say, it's complicated and there are some perverse incentives that can prevent you from always "doing the right thing".
Problem #1: You lose control. You may begin with Apache but, as OP states, you eventually end up with the incentive to "rug pull" by switching the license because of market forces/VC influence. (I'm the founder of my company and I would resist it, but eventually our investors might control the board and make that happen anyway by replacing me.)
Problem #2: The hardest part of building a company is getting traction. Just getting anybody to care about you takes a ton of effort and having a permissive license makes it way easier to get that early adoption. And, by the time you have adoption and you decide to go raise VC money, you now end up with Problem #1.
Problem #3: If you start with a copyleft license like GPL/AGPL, then you make Problem #2 harder. Many companies simply won't adopt your software if you're using that. (Linux is a notable exception here, but even companies using AGPL like MongoDB have switched away from copyleft.)
We are using BSL because it feels like the best compromise (it becomes Apache 2.0 eventually). I do still think a lot about switching to Apache though. I just really hate the idea of "rug pulling" and I'd rather be honest from the beginning with a license like BSL, even if it is more difficult to get that initial momentum.
Does anybody else have thoughts to share about this?
0: https://github.com/lunasec-io/lunasec/blob/master/LICENSE.md
1: Open (Source) for Business: A Practical Guide to Open Source Software Licensing - Third Edition https://a.co/8SLjVZI
2: https://www.lunasec.io/docs/blog/how-to-build-an-open-source...
-
Ignore 98% of dependency alerts: introducing Semgrep Supply Chain
Here is some code on GitHub that does call site checking using SemGrep: https://github.com/lunasec-io/lunasec/blob/master/lunatrace/...
(Note: I helped write that. We're building a similar service to the r2c one.)
You're right that patching is hard because of opaque package diffs. I've seen some tools coming out like Socket.dev which show a diff between versions. https://socket.dev/npm/package/react/versions
But, that said, this is still a hard problem to solve and it's happened before that malware[0][1] has been silently shipped because of how opaque packages are.
0: https://web.archive.org/web/20201221173112/https://github.co...
1: https://www.coindesk.com/markets/2018/11/27/fake-developer-s...
-
Ask HN: How do you deploy your weekend project in 2022?
https://github.com/lunasec-io/lunasec/blob/master/lunatrace/...
It's more complicated now but if you look at the history of that "backend-cdk" folder then it's simpler a few months ago.
The important bit is the "ecs-patterns" library. That's the one that is magical and deals with setting up the load balancer, cluster, etc for you. And the way we shove the Docker images in I found to be quite straightforward. (And deploys are one line)
-
Cdk8s: CNCF-Backed Infrastructure-as-Code (IaC) for Kubernetes
I saw this last night while trying to setup Flux on EKS. I wanted to share this and see what other tools people are using too.
Is it possible for Kubernetes to be startup-friendly? (We're using ECS right now via the normal CDK[0]).
0: https://github.com/lunasec-io/lunasec/blob/master/lunatrace/...
-
Vulnerability Management for Go
This is really cool to see because this is the #1 problem with current tools (as you said). I call it "alert fatigue" in my head because it's meaningless when you have 100+ vulns to fix but they're 99% unexploitable.
I have a bit of a bone to pick with this space: I've been working on this problem for a few months now (link to repo[0] and blog[1]).
My background is Application Security and, as is often the case with devs, rage fuels me in my desire to fix this space. Log4Shell helped too.
As another comment said, doing this in a language agnostic way is a big PITA and we haven't fully built it yet. We are using SemGrep to do very basic ststic analysis (see if vulnerable function is ever imported + called). But we're not doing fancy Inter-process taint analysis like CodeQL can.
(We have a big Merkle tree that represents the dependency tree and that's how we are able to make the CI/CD check take only a few seconds because we can pre-compute.)
Anyway, if you have a second to help, we have a GitHub App[1] that you can install to test this out + help us find bugs. It's best at NPM now but we have basic support for other languages (no dep te analysis yet).
There are so many edge cases with the ways that repos are setup so just have more scans coming in helps a ton. (Well, it breaks stuff, but we already determined that rage sustains me.)
Thank you. climbs off of soap box
0: https://github.com/lunasec-io/lunasec
1: https://www.lunasec.io/docs/blog/the-issue-with-vuln-scanner...
2: https://github.com/marketplace/lunatrace-by-lunasec
log4shell-tools
-
Log4j: The Pain Just Keeps Going and Going
I'm seeing this as well. While the amount of traffic has certainly decreased compared to the first couple of days after the CVE was announced, https://log4shell.tools is still being used by people every day.
-
How to send similar payload to different http headers?
e.g. from log4j. Taken from https://log4shell.tools/
-
Received a visit from the infamous Dejmnok420 today. Can anyone ELI5 the steps to take now?
I run tests with https://log4shell.tools, and it seems I'm vulnerable on client side, but my server is safe, which makes sense as I compiled the .jar 2 weeks ago with BuildTools as indicated here https://www.spigotmc.org/threads/spigot-security-releases-%E2%80%94-1-8-8%E2%80%931-18.537204/
-
Log4Shell Vulnerability Test Tool
You're right, but this has always been the trade off with tools like this. You put some trust in the tool's authors and gain some insight in return. Remember the services that tested for Heartbleed (e.g. https://filippo.io/Heartbleed/)? Fairly similar trade-off, but still these tools were widely used.
If you really don't trust me and have some technical know-how, you can self host the service. It's open source: https://github.com/alexbakker/log4shell-tools.
-
Log4j 2.15.0 – Previously suggested mitigations may not be enough
I can't say I'm feeling the same. Still lots of people testing over at https://log4shell.tools almost a week after this vulnerability became widely known. Plenty of people still discovering they're vulnerable as well. I think it's likely that these are just the people who know they're using log4j. If you're running a black box product from a vendor you'll have no clue you're vulnerable until it's too late.
-
Analysis of the 2nd Log4j CVE published earlier (CVE-2021-45046 / Log4Shell2)
I have a feeling this vulnerability is going to be with us for years. Shameless plug: I built a tool that assists in detecting whether you're vulnerable to this or the previous CVE: https://log4shell.tools. Just enter the JNDI URI it gives you anywhere you suspect it ends up causing a message lookup in log4j. If log4j does so much as a DNS lookup, this tool will tell you about it.
-
log4shell.tools - Check if you're vulnerable to an egregious case of log4shell
Done! https://github.com/alexbakker/log4shell-tools
What are some alternatives?
immudb - immudb - immutable database based on zero trust, SQL/Key-Value/Document model, tamperproof, data change history
ysoserial - A proof-of-concept tool for generating payloads that exploit unsafe Java object deserialization.
apache-log4j-poc - Apache Log4j 远程代码执行
log4j-affected-db - A community sourced list of log4j-affected software
wazuh-dashboard-plugins - Plugins for Wazuh Dashboard
log4j2-without-jndi - log4j2-core JAR w/o JndiLookup.class
react-payment-inputs - A React Hook & Container to help with payment card input fields.
log4j-log4shell-affected - Lists of affected components and affected apps/vendors by CVE-2021-44228 (aka Log4shell or Log4j RCE). This list is meant as a resource for security responders to be able to find and address the vulnerability
mantine - A fully featured React components library
aegis4j - A Java agent that disables platform features you don't use, before an attacker uses them against you.
react-numpad - A numpad for number, date and time, built with and for React.
log4jshell-pdf - The purpose of this project is to demonstrate the Log4Shell exploit with Log4J vulnerabilities using PDF as delivery channel