this post was submitted on 26 Jul 2024
214 points (95.3% liked)

Technology

59456 readers
3214 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related content.
  3. Be excellent to each another!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, to ask if your bot can be added please contact us.
  9. Check for duplicates before posting, duplicates may be removed

Approved Bots


founded 1 year ago
MODERATORS
 

Researchers at Truffle Security have found, or arguably rediscovered, that data from deleted GitHub repositories (public or private) and from deleted copies (forks) of repositories isn't necessarily deleted.

Joe Leon, a security researcher with the outfit, said in an advisory on Wednesday that being able to access deleted repo data – such as APIs keys – represents a security risk. And he proposed a new term to describe the alleged vulnerability: Cross Fork Object Reference (CFOR).

"A CFOR vulnerability occurs when one repository fork can access sensitive data from another fork (including data from private and deleted forks)," Leon explained.

For example, the firm showed how one can fork a repository, commit data to it, delete the fork, and then access the supposedly deleted commit data via the original repository.

The researchers also created a repo, forked it, and showed how data not synced with the fork continues to be accessible through the fork after the original repo is deleted. You can watch that particular demo.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 33 points 3 months ago (2 children)

This is not a GitHub issue. It's a GIT feature. People are always going to clone your repo.

[–] [email protected] 8 points 3 months ago (1 children)

Well, sort of. GitHub certainly could refuse to render orphan commits. They pop up a banner saying so but I don't see why they should show the commit at all. They could still keep the data until it's garbage collected since a user might re-upload the commit in a new branch.

This seems like a non-issue though since someone who hasn't already seen the disclosed information would need to somehow determine the hash of the deleted commit.

[–] [email protected] 8 points 3 months ago

Ah - Actually reading the article reveals why this is actually an issue:

What's more, Ayrey explained, you don't even need the full identifying hash to access the commit. "If you know the first four characters of the identifier, GitHub will almost auto-complete the rest of the identifier for you," he said, noting that with just sixty-five thousand possible combinations for those characters, that's a small enough number to test all the possibilities.

So enumerating all the orphan commits wouldn't be that hard.

In any case if a secret has been publicly disclosed, you should always assume it's still out there. For sure, rotate your keys.

[–] [email protected] 7 points 3 months ago (1 children)

Forks do not exist in git. It's a GitHub feature, and a massive blunder at the same time.

[–] [email protected] 5 points 3 months ago (2 children)

Yes they exist. It's called a clone

[–] [email protected] 7 points 3 months ago (1 children)

The article is specifically about how GitHub forks are not the same as a git clone. A clone isn’t accessible from the upstream without the upstream pulling the changes, but this vulnerability points out that a fork on GitHub is accessible from the upstream without a pull, even if the fork is private.

It’s because GitHub under the hood doesn’t actually do a real clone so that they can save on disk usage.

[–] [email protected] 0 points 3 months ago

You actually can't turn a fork private on github

[–] [email protected] 4 points 3 months ago (1 children)

How can such a wrong answer get so many points? Clones and forge forks are unrelated. First, GitHub or GitLab cannot and could not link clones together without analyzing the remotes of each clone.

FFS it's a tech community...

[–] [email protected] -3 points 3 months ago

Because you are the one being wrong. Github and others only provide a nice interface around clones. That's all there is, and it doesn't matter much