DEV Community

Alex Grinman
Alex Grinman

Posted on

45 9

Spoof a commit on GitHub. From Anyone.

Did you know that anyone can commit as you on GitHub? If you don't believe me, just browse through this repository's forged commits or use our tool to forge a commit for yourself.

Try it for yourself: spoof.krypt.co


How does it work?

Open your ~/.gitconfig

[user]
    name  = Ben Bitdiddle
    email = bbitdiddle@mit.edu
Enter fullscreen mode Exit fullscreen mode

Change name and email to any value you want.

If email matches the email of another GitHub user, that user's picture will show up next to the commit, and
when you click on it will take you to their real GitHub profile.

Next time you see a commit on GitHub from Ben -- don't trust that Ben actually authored it.

How can do prove that my commits are really mine?

Anyone can set the “author” of a Git commit to any value.
To prove that you authored a commit you must attach a digital signature to it.
The only way someone knows it was really your commit is to verify the commit's signature.

GitHub supports verifying & signing Git commits

Check out this signed commit: kryptco/kr@0cca333.

If a commit doesn’t have a green “Verified” badge, then it could have been authored by anyone!

GitHub verifies signed commits, and Krypton makes signing commits easy.
Get your green verified badge, https://krypt.co.

Let's see some well known forgeries...

"I love windows and subversion!" -- @torvalds on #1eb0d8

"You should really use gitlab.com, it's way better." -- @schacon on #730c7e

Anonymously Forged Commits

Browse all of the forged commits from the community here! https://github.com/git-forge/fraudulent/commits/master

You Know That Your Mobile App Needs Security. Here\

You Know That Your Mobile App Needs Security. Here's How to Get Started

Mobile apps have become a cornerstone of modern life. With billions of users, they have become a prime target for attackers. By implementing strong mobile app security, organizations can prevent IP theft, revenue loss, and an erosion of user trust.

Read the guide

Top comments (13)

Collapse
 
ferricoxide profile image
Thomas H Jones II

Several months back, I was setting up a new project on GitHub. As I was configuring my protected branches, I noticed a checkbox for "Require signed commits". I'm one of those obsessive box-checker freaks. So, when I noticed this new box, I clicked on the link to see what it was about and how to make it so I could check the box. Been signing commits ever since then (and Slack-shaming teammates whose commits don't have the green Verified box).

Collapse
 
adityavarma1234 profile image
Aditya Varma

Why is the repository disabled? github.com/git-forge/fraudulent

Collapse
 
agrinman profile image
Alex Grinman

It's unfortunate -- I guess GitHub decided it was against their ToS. I don't agree personally, and we made it very clear that spoof.krypt.co was a demonstration, but we must respect their decision (and ability) to do this :/

Collapse
 
jfinstrom profile image
James Finstrom

itsafeature 😁

I work for a major open source project and commit patches from other developers. It is their code they get credit. Committing to your repos should generally be restricted anyway. Some places use signed commits as a form of CLA bit over all this is a necessary thing.

Collapse
 
crawlingcity profile image
crawlingcity

This works on bitbucket too, had a coworker commiting as myself for a while because my name and email was somehow configured inside a docker container

Collapse
 
qm3ster profile image
Mihail Malo

The repo is down :(

Collapse
 
jrtibbetts profile image
Jason R Tibbetts • Edited

Can you use this method to spoof a user with more permissions than you normally have, such as someone with PR merge permission?

(Asking for a friend. ;))

Collapse
 
mgh87 profile image
Martin Huter

Thanks for spreading the word on signing git commits.

Know all of it, but still enjoyed reading.

Collapse
 
rhymes profile image
rhymes

Didn't know! Thanks!

Is this the solution? help.github.com/articles/signing-c...

Collapse
 
agrinman profile image
Alex Grinman

Yep!

Collapse
 
ankurk91 profile image
Ankur K

Here is how to setup GPG for Github-

gist.github.com/ankurk91/c4f0e23d7...

Collapse
 
leob profile image
leob

Awesome, didn't realize this!

Feature flag article image

Create a feature flag in your IDE in 5 minutes with LaunchDarkly’s MCP server ⏰

How to create, evaluate, and modify flags from within your IDE or AI client using natural language with LaunchDarkly's new MCP server. Follow along with this tutorial for step by step instructions.

Read full post

👋 Kindness is contagious

Take a moment to explore this thoughtful article, beloved by the supportive DEV Community. Coders of every background are invited to share and elevate our collective know-how.

A heartfelt "thank you" can brighten someone's day—leave your appreciation below!

On DEV, sharing knowledge smooths our journey and tightens our community bonds. Enjoyed this? A quick thank you to the author is hugely appreciated.

Okay