Giter VIP home page Giter VIP logo

google / security-research Goto Github PK

View Code? Open in Web Editor NEW
2.9K 235.0 370.0 85.34 MB

This project hosts security advisories and their accompanying proof-of-concepts related to research conducted at Google which impact non-Google owned code.

Home Page: https://www.google.com/about/appsecurity/

License: Apache License 2.0

C 74.82% Makefile 1.26% Assembly 1.72% C++ 0.49% Go 9.09% Shell 5.42% Java 2.32% Python 3.31% Dockerfile 1.01% JavaScript 0.23% PHP 0.04% GDB 0.06% CodeQL 0.24%

security-research's Introduction

Security Research

This project hosts security advisories and their accompanying proof-of-concepts related to research conducted at Google which impact non-Google owned code.

We believe that vulnerability disclosure is a two-way street. Vendors, as well as researchers, must act responsibly. This is why Google adheres to a 90-day disclosure deadline. We notify vendors of vulnerabilities immediately, with details shared in public with the defensive community after 90 days, or sooner if the vendor releases a fix.

You can read up on our full policy at: https://www.google.com/about/appsecurity/.

Advisories

The disclosure of vulnerabilities are all in the form of security advisories, which can be browsed in the Security Advisories page.

Proof of Concepts

Accompanying proof-of-concept code will be used to demonstrate the security vulnerabilities.

Year Title Advisories Links
2023 Oracle VM VirtualBox 7.0.10 r158379 Escape CVE-2023-22098 PoC
2023 Linux: eBPF Path Pruning gone wrong CVE-2023-2163 PoC
2023 XGETBV is non-deterministic on Intel CPUs PoC
2023 XSAVES Instruction May Fail to Save XMM Registers PoC
2022 RET2ASLR - Leaking ASLR from return instructions PoC
2022 Unexpected Speculation Control of RETs PoC
2022 Bleve Library: Traversal Vulnerabilities in Create / Delete IndexHandler GHSA-gc7p-j7x8-h873 PoC
2022 Microsoft: CBC Padding Oracle in Azure Blob Storage Encryption Library CVE-2022-30187 PoC
2022 Apple: Heap-based Buffer Overflow in libresolv GHSA-6cjw-q72j-mh57 PoC
2022 Apache: Code execution in log4j2 CVE-2021-45046 PoC
2021 Surface Pro 3: BIOS False Health Attestation (TPM Carte Blanche) CVE-2021-42299 Write-up, PoC
2021 CVE-2021-22555: Turning \x00\x00 into 10000$ CVE-2021-22555 Write-up, PoC
2021 Linux: KVM VM_IO|VM_PFNMAP vma mishandling CVE-2021-22543 PoC
2021 BleedingTooth: Linux Bluetooth Zero-Click Remote Code Execution CVE-2020-24490, CVE-2020-12351, CVE-2020-12352 Write-up, PoC

License & Patents

The advisories and patches posted here are free and open source.

See LICENSE for further details.

Contributing

The easiest way to contribute to our security research projects is to correct the patches when you see mistakes.

Please read up our Contribution policy.

security-research's People

Contributors

akrasuski1 avatar ashdoeshax avatar c0m0r1 avatar conlonial avatar conlonialc avatar d4em0n avatar eltociear avatar es0j avatar fluxchief avatar intrigus-lgtm avatar jonatgoogle avatar jordyzomer avatar jsoref avatar koczkatamas avatar lcashdol avatar liona24 avatar mammix2 avatar marpom avatar mingi avatar ntnlabs avatar quanggle97 avatar rcorrea35 avatar sirdarckcat avatar sroettger avatar st424204 avatar taviso avatar thatjiaozi avatar theofficialflow avatar u269c avatar zhreyu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

security-research's Issues

Security Policy violation Binary Artifacts

This issue was automatically created by Allstar.

Security Policy Violation
Project is out of compliance with Binary Artifacts policy: binaries present in source code

Rule Description
Binary Artifacts are an increased security risk in your repository. Binary artifacts cannot be reviewed, allowing the introduction of possibly obsolete or maliciously subverted executables. For more information see the Security Scorecards Documentation for Binary Artifacts.

Remediation Steps
To remediate, remove the generated executable artifacts from the repository.

Artifacts Found

  • pocs/cpus/ret2aslr/src/attacker
  • pocs/cpus/ret2aslr/src/victim

Additional Information
This policy is drawn from Security Scorecards, which is a tool that scores a project's adherence to security best practices. You may wish to run a Scorecards scan directly on this repository for more details.


Allstar has been installed on all Google managed GitHub orgs. Policies are gradually being rolled out and enforced by the GOSST and OSPO teams. Learn more at http://go/allstar

This issue will auto resolve when the policy is in compliance.

Issue created by Allstar. See https://github.com/ossf/allstar/ for more information. For questions specific to the repository, please contact the owner or maintainer.

Formatting of reward amounts is weird

on https://github.com/google/security-research/blob/master/kernelctf/rules.md, formatting the rewards amounts to 3 decimal places is just awkward. On that page, I see the following reward amounts:

  • $21.337
  • $10.000
  • $20.000
  • $21.000
  • $10.500
  • $0 to $20.000

This is really confusing, as the separator for whole vs fractional numbers differs by region: https://en.wikipedia.org/wiki/Decimal_separator

For those that are used to using a period "." as a group separator for large numbers, someone could read "$21.337" to mean "twenty-one thousand... dollars". If that is the intent here, I would maybe not use the USD symbol, as most people assume a period "." is used as a decimal separator.

Most people use the hint of only having 2 decimal to know which format you are talking about. If this page is indeed treating "21.337" to mean "21 dollars and 337 cents), I would explicitly state that or change the formatting of these numbers.

Unable to Test the "kvm_vma" | Linux: KVM VM_IO|VM_PFNMAP vma mishandling;-CVE-2021-22543

Since there's no direct context or Readme.md about the repo testing environment;

Based on the limited information on git and the internet findings;

I set my testing environment to;

host machine( ubuntu20 with kernel 5.8.0-41-generic) >> Installed VMM >> created Centos 8.58

The 5.8.041-generic was found from https://github.com/google/security-research/blob/master/pocs/linux/kvm_vma/kernel_code.asm

Why centOS 8.5 is found on https://cve.tuxcare.com/els/cve/CVE-2021-22543

image

kernel version:

image

how ever getting error: attempt to define a local label before any non-local labels

image


Don't understand where am wrong!!! especially about my testing environment

Troubleshooting

I'm working on "CVE-2023-22098, CVE-2023-22099, CVE-2023-22100", in which I am testing this "CVE-2023-22098" repo and setting up the environment;

image

however, i'm unable to open the calculator after running "insmod exploit .ko"

payload_error

Also i've tried :

  • change the char calc[] = "/home/a.sh/"; ( where this creates a simple a.txt file) - not working
  • Disable ASLR & apparmor - not working
  • used demsg - there's no error's demsg.txt

my env: ubuntu 22.04(host machine) >> Vbox 7.0.10v >>ubuntu 20.04(vm)


  1. Just wanted to know about other vuln : CVE-2023-22099, CVE-2023-22100

How to build the reproducer from GHSA-mj4w-6495-6crx

Hi Team,

Apologies I missed some obvious steps, but I couldn't find how to build the reproducer at:

GHSA-mj4w-6495-6crx

It seems to be missing some function definitions that I couldn't find in the repo, and I wasn't sure if that was on purpose, or if some files need to be included in order for others to play with the reproducer. e.g.:

$ gcc -o victim test.c -O0 -masm=intel -w                 -DVICTIM
test.c:10:10: fatal error: utils.h: No such file or directory
   10 | #include "utils.h"
      |          ^~~~~~~~~
compilation terminated.

Then trying to include another utils.h file from pocs/cpus/ret2aslr/src/utils.h, getting:

$ gcc -o victim test.c -O0 -masm=intel -w                 -DVICTIM
/usr/bin/ld: /tmp/cclLHZ8z.o: in function `poison':
test.c:(.text+0x215): undefined reference to `jitForLoop'
/usr/bin/ld: test.c:(.text+0x2aa): undefined reference to `rdmsr_on_cpu'
/usr/bin/ld: /tmp/cclLHZ8z.o: in function `main':
test.c:(.text+0x443): undefined reference to `SetCoreAffinity'
collect2: error: ld returned 1 exit status

Thanks in advance for your help!

zenbleed "chicken bit" mitigation errata; "modprobe msr"

Referencing @taviso post about ZenBleed at https://lock.cmpxchg8b.com/zenbleed.html :

First, thanks for an excellent explanation. I was able to reproduce the problem on an "AMD EPYC 7402P 24-Core" system.

Second, the "chicken bit" mitigation worked on this system under Ubuntu 22.04 LTS, but required these extra steps

apt install msr-tools
modprobe msr 
wrmsr -a 0xc0011029 $(($(rdmsr -c 0xc0011029) | (1<<9)))

Without the modprobe you get a weird error message from the shell when wrmsr tries to
interpret the rdmsr: open: No such file or directory error described in the rdmsr(1)
man page.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.