Breaking Cloud Native Web APIs in their natural habitat.

Overview

Go GitHub Action Container Build GitHub Action Kubernetes Integration GitHub Action

cnfuzz - Cloud Native Web API Fuzzer

"Breaking Cloud Native Web APIs in their natural habitat."

Fuzzing web APIs in their fully converged Cloud Native state renders more representative results, just like it would have been deployed in production.

cnfuzz is a project written in Golang that automates fuzzing web APIs deployed in Kubernetes clusters. By tracking hashes of all container images, (re)deployed web API versions will be fuzzed - to detect potential security and stability issues and stores its results in a data lake.

OpenAPI and RESTler by Microsoft are being used to further automate the process.

Why?

  • You want to fuzz web API logic where they actually operate, especially when fuzzing complete Service Meshes
  • You want to integrate and/or build data lakes with fuzzing data on top of AWS S3 based storage
  • You want to save expensive Cloud CI/CD pipeline credits by using idle Kubernetes cluster resources
  • You want fuzzing te be done outside of your CI/CD pipeline
  • You have heavy performance requirements for your fuzzing and Cloud based CI/CD pipelines do not suffice
  • You want to fuzz web API's of services which are interconnected and are being deployed by different teams in the same Kubernetes cluster
  • You want to automatically fuzz existing opensource software for instability issues
  • You get excited over fuzzing farms

Architecture

Usage

Installation

helm repo add cnfuzz https://suecodelabs.github.io/cnfuzz
helm repo update
helm install cnfuzz cnfuzz/cnfuzz

Getting started

All it takes to getting started after installation of cnfuzz on your Kubernetes cluster is to annotate your Kubernetes Pods, Deployments, DaemonSets, etc like in the following example:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-api
spec:
  selector:
    matchLabels:
      app: my-api
  replicas: 1
  template:
    metadata:
      labels:
        app: my-api
      annotations:
        cnfuzz/enable: "true"
        cnfuzz/open-api-doc: "/swagger/swagger.json"
        cnfuzz/secret: "0d5989ed-d60c-470e-b1b5-576fcf0f5d8c"
    spec:
      containers:
        - name: myapi
          image: my-api
          imagePullPolicy: Always
          ports:
            - containerPort: 80

Setup Kubernetes development environment

Build and run

Kind

# don't forget to commit your changes locally before deploying to Kind.
make kind-init

Rancher Desktop

# don't forget to commit your changes locally before deploying to Rancher Desktop.
make rancher-init

These commands do the following:

  • Setup initial deployment of cnfuzz
  • Build a container image and load it into Kubernetes
  • Install cnfuzz via helm with the local built image
  • Create example webapi deployment to fuzz

Kind

# don't forget to commit your changes locally before deploying to Kind.
make kind-build

Rancher Desktop

# don't forget to commit your changes locally before deploying to Kind.
make rancher-build

These commands do the following:

  • (re)-build cnfuzz and upgrade deployment with latest image

Cleanup the build

This command does the following:

  • delete the cnfuzz installation from Kubernetes
make k8s-clean
# If you did a git pull between the above build and the below k8s-clean
# you will see an error. Specify the release as follows:
make k8s-clean GIT_COMMIT=f4fd3d2

Build project

For building the project you can use the Makefile.

Build Docker image

IMAGE=myrepo/cnfuzz make image

Compile binary

# Compile project to binary dist/cnfuzz
make build

Prepare for release

cd docs
helm package ../charts/cnfuzz
helm repo index --url https://suecodelabs.github.io/cnfuzz/ .

Roadmap

  • Opensource graduation research project ❤️
  • Support Kustomize
  • Integrate more tightly with Kubernetes
  • Autodiscovery of possible URI prefixes

Sponsors

Engineering Team

  • Luuk van den Maagdenberg, Lead Developer
  • Pim Merks, Developer
  • Robert Scholts, Developer
  • Sylvia van Os, Developer
  • Ofer Chen, Developer
  • Serge van Namen, Developer / Community Lead
  • Hans Strijker, Maintainer
  • Sam Crauwels, Maintainer
  • Michiel Westerink, Maintainer

Community

Every first Thursday of the month at 18:30 CET there will be a hybrid community meetup for users, developers and maintainers of the project hosted at Sue B.V. in the Netherlands.

Google Meet or see you at Sue B.V. including lovely drinks and food before the meetup!

Swag

Do you want swag that our awesome marketing team created for this project? Come to our community meetup on prem or contact [email protected] to receive your swag!

Stickers & Gear

Support

Do you need support that cannot be handled via issue tracking? Please contact us at [email protected] or via the contact form on this page.

Comments
  • Major CNFuzz refactor

    Major CNFuzz refactor

    Major refactor of CNFuzz. The biggest difference is in how config works. Instead of using flags we now simply parse a yaml file inside a config map. Other big change is in how logging is implemented. We now use logr in combination with zap (just like the Kubernetes project).

    Some small things still need to be done. Like adding back the health checks and adding tests for the new code.

    closes #8 closes #63 (not entirely true, but I'm fine with keeping Cobra) Probably fixes some bugs

    opened by Luukvdm 2
  • Bump k8s.io/api from 0.25.0 to 0.25.1

    Bump k8s.io/api from 0.25.0 to 0.25.1

    Bumps k8s.io/api from 0.25.0 to 0.25.1.

    Commits
    • d6c357a Update dependencies to v0.25.1 tag
    • fce3016 Merge pull request #112161pohly/automated-cherry-pick-of-#112129
    • 29513a2 dependencies: update to ginkgo v2.1.6 and gomega v1.20.1
    • See full diff in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump k8s.io/apimachinery from 0.25.0 to 0.25.1

    Bump k8s.io/apimachinery from 0.25.0 to 0.25.1

    Bumps k8s.io/apimachinery from 0.25.0 to 0.25.1.

    Commits
    • 8252641 Merge pull request #112330enj/automated-cherry-pick-of-#112193
    • 10b456c Merge pull request #112161pohly/automated-cherry-pick-of-#112129
    • 4759a80 Add an option for aggregator
    • 3296217 dependencies: update to ginkgo v2.1.6 and gomega v1.20.1
    • See full diff in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump k8s.io/apimachinery from 0.24.3 to 0.25.0

    Bump k8s.io/apimachinery from 0.24.3 to 0.25.0

    Bumps k8s.io/apimachinery from 0.24.3 to 0.25.0.

    Commits
    • 117bd9b Merge pull request #111113 from mimowo/retriable-pod-failures-job-controller
    • 74deb3d Merge pull request #111696 from liggitt/go119mod
    • fef5499 Update go.mod to go1.19
    • 41606c6 Merge pull request #111677 from dims/stop-panic-in-govet-levee
    • dbffa07 Support handling of pod failures with respect to the specified rules
    • 6627090 run lint-dependencies and follow directions
    • addc01f Stop panic in govet-levee CI job
    • f15b816 Merge pull request #110495 from alexzielenski/atomic-objectreference
    • e68cae5 update kube-openapi
    • b541046 Merge pull request #111557 from alexzielenski/update-smd-422
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump k8s.io/client-go from 0.24.3 to 0.25.0

    Bump k8s.io/client-go from 0.24.3 to 0.25.0

    Bumps k8s.io/client-go from 0.24.3 to 0.25.0.

    Commits
    • 2666bd2 Update dependencies to v0.25.0 tag
    • b3e4a40 Merge remote-tracking branch 'origin/master' into release-1.25
    • c2f61ae Update removal warnings to 1.26
    • 54e42ab update-gofmt
    • ef26118 Revert "Remove gcp and azure auth plugins"
    • a890e7b Merge pull request #109090 from sarveshr7/multicidr-rangeallocator
    • f10f16e Merge pull request #111113 from mimowo/retriable-pod-failures-job-controller
    • 3300752 Merge pull request #111696 from liggitt/go119mod
    • ce9ac37 Merge pull request #108692 from jsafrane/selinux
    • 4100519 Update go.mod to go1.19
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Failed to create restler job: an empty namespace may not be set during creation

    Failed to create restler job: an empty namespace may not be set during creation

    {"level":"error","ts":1647542696.3169951,"caller":"job/launch.go:30","msg":"failed to create restler job: an empty namespace may not be set during creation"

    bug 
    opened by pcktdmp 1
  • Persistent cache for fuzzed images hashes

    Persistent cache for fuzzed images hashes

    Currently cnfuzz does not support persistent caching of container images it already has fuzzed. Implement a cache which introduces this feature, preferably via redis.

    enhancement 
    opened by pcktdmp 1
  • Bump k8s.io/client-go from 0.25.1 to 0.25.2

    Bump k8s.io/client-go from 0.25.1 to 0.25.2

    ⚠️ Dependabot is rebasing this PR ⚠️

    Rebasing might not happen immediately, so don't worry if this takes some time.

    Note: if you make any changes to this PR yourself, they will take precedence over the rebase.


    Bumps k8s.io/client-go from 0.25.1 to 0.25.2.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump k8s.io/api from 0.25.1 to 0.25.2

    Bump k8s.io/api from 0.25.1 to 0.25.2

    Bumps k8s.io/api from 0.25.1 to 0.25.2.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump k8s.io/apimachinery from 0.25.1 to 0.25.2

    Bump k8s.io/apimachinery from 0.25.1 to 0.25.2

    Bumps k8s.io/apimachinery from 0.25.1 to 0.25.2.

    Commits
    • 478dd6e Merge pull request #112527liggitt/automated-cherry-pick-of-#112526
    • 14bc1be Limit redirect proxy handling to redirected responses
    • See full diff in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump github.com/getkin/kin-openapi from 0.102.0 to 0.103.0

    Bump github.com/getkin/kin-openapi from 0.102.0 to 0.103.0

    Bumps github.com/getkin/kin-openapi from 0.102.0 to 0.103.0.

    Release notes

    Sourced from github.com/getkin/kin-openapi's releases.

    v0.103.0

    What's Changed

    New Contributors

    Full Changelog: https://github.com/getkin/kin-openapi/compare/v0.102.0...v0.103.0

    Commits
    • a8f69f4 fix: detects circular references that can't be handled at the moment to avoid...
    • 6610338 Expose request/response validation options in the middleware Validator (#608)
    • d12860c use %w to wrap the errors (#596)
    • See full diff in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • WIP: Create a Golang wrapper around Restler

    WIP: Create a Golang wrapper around Restler

    By creating a wrapper around Restler we get more control over the container. This makes things like creating new auth tokens, #28 monitoring the API, and parsing the Restler output easier. Should also solve the "run as root" (#22) problem.

    Diagram

    opened by Luukvdm 0
  • Monitor target web API during fuzzing

    Monitor target web API during fuzzing

    While RESTler is fuzzing a web API, cnfuzz could monitor the service. There is a lot of potential here. We could for example check on the health of the pod and collect its logs.

    enhancement 
    opened by Luukvdm 0
Releases(v0.2.0)
  • v0.2.0(Aug 22, 2022)

    What's Changed

    • Debugging with DevSpace by @Luukvdm in https://github.com/suecodelabs/cnfuzz/pull/76
    • Upgraded the dependencies by @Luukvdm in https://github.com/suecodelabs/cnfuzz/pull/78
    • Feature/health check by @Luukvdm in https://github.com/suecodelabs/cnfuzz/pull/79
    • Upgrade KinD by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/80
    • Update restler image by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/81
    • Major CNFuzz refactor by @Luukvdm in https://github.com/suecodelabs/cnfuzz/pull/82
    • Update README.md by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/83
    • Create 0.2.0 release by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/86

    Full Changelog: https://github.com/suecodelabs/cnfuzz/compare/v0.1.2...v0.2.0

    Source code(tar.gz)
    Source code(zip)
  • v0.1.2(May 16, 2022)

    What's Changed

    • Version bumps of dependencies by @Luukvdm in https://github.com/suecodelabs/cnfuzz/pull/74
    • Golang package version bumps by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/75

    Full Changelog: https://github.com/suecodelabs/cnfuzz/compare/v0.1.1...v0.1.2

    Source code(tar.gz)
    Source code(zip)
  • v0.1.1(May 6, 2022)

    CNFuzz now defaults with forgiving values to be deployed on smaller/test environments.

    What's Changed

    • Fix/default values non prod by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/73

    Full Changelog: https://github.com/suecodelabs/cnfuzz/compare/v0.1.0...v0.1.1

    Source code(tar.gz)
    Source code(zip)
  • v0.1.0(May 6, 2022)

    First dot release which makes it easy to install CNFuzz on Kubernetes clusters without the need of having to clone the repository.

    What's Changed

    • Add contact form by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/69
    • Create helm chart repo by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/70
    • Release 0.1.0 by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/71
    • Fix install command by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/72

    Full Changelog: https://github.com/suecodelabs/cnfuzz/compare/v0.0.3-alpha...v0.1.0

    Source code(tar.gz)
    Source code(zip)
  • v0.0.3-alpha(Apr 28, 2022)

    What's Changed

    • Update README by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/67
    • Support opt out for microsoft RESTler telemetry by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/68

    Full Changelog: https://github.com/suecodelabs/cnfuzz/compare/v0.0.2-alpha...v0.0.3-alpha

    Source code(tar.gz)
    Source code(zip)
  • v0.0.2-alpha(Apr 28, 2022)

    This release supports suggestions to deploy CNFuzz on Kubernetes clusters where the resources are scarce.

    What's Changed

    • Support small setups by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/65
    • release v0.0.2-alpha by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/66

    Full Changelog: https://github.com/suecodelabs/cnfuzz/compare/v0.0.1-alpha...v0.0.2-alpha

    Source code(tar.gz)
    Source code(zip)
  • v0.0.1-alpha(Apr 28, 2022)

    The first (alpha) release of CNFuzz which supports:

    • Automation of web API fuzzing in Kubernetes clusters using RESTler
    • Exporting fuzzing results to S3 compatible storage backends
    • Caching already fuzzed image hashes via Redis

    What's Changed

    • Create go.yml by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/1
    • Update readme meet url by @robertscholts in https://github.com/suecodelabs/cnfuzz/pull/2
    • Create docker-publish.yml by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/3
    • Switch to github container image registry by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/4
    • Updated abstract by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/5
    • Re-order abstract by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/6
    • Use todo api container by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/15
    • Fix/dev instructions by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/16
    • Improve local development setup by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/18
    • Add Github Actions badge by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/22
    • Simplified auth code by @Luukvdm in https://github.com/suecodelabs/cnfuzz/pull/23
    • Add KinD Kubernetes deployment for integration testing by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/24
    • Fix KinD integration by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/25
    • Switch to local todo api build by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/30
    • Store fuzzing results in a persistent storage solution by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/31
    • Godoc comments by @Luukvdm in https://github.com/suecodelabs/cnfuzz/pull/32
    • Swag init by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/34
    • Add marketing contact info by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/35
    • Add more swag by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/36
    • updating badges to link to build by @robertscholts in https://github.com/suecodelabs/cnfuzz/pull/39
    • Config re-arrange & renames by @Luukvdm in https://github.com/suecodelabs/cnfuzz/pull/37
    • Ignore *.swp files by @lcmwesterink in https://github.com/suecodelabs/cnfuzz/pull/43
    • Fix make kind race condition by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/42
    • Use redis standalone mode to not start 4 instances of redis for local development by @pimmerks in https://github.com/suecodelabs/cnfuzz/pull/40
    • get namespace config prop from viper by @Luukvdm in https://github.com/suecodelabs/cnfuzz/pull/45
    • Detail the build instructions. by @Oddly in https://github.com/suecodelabs/cnfuzz/pull/48
    • Cleanup old files by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/38
    • Update README by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/49
    • renamed job-img flag to scheduler-img flag by @Luukvdm in https://github.com/suecodelabs/cnfuzz/pull/47
    • Faster local development flow by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/50
    • Updating to go 1.18 by @Luukvdm in https://github.com/suecodelabs/cnfuzz/pull/56
    • Initial take on simple redis support in the chart by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/57
    • Cache images and their status by @Luukvdm in https://github.com/suecodelabs/cnfuzz/pull/55
    • proper TIMESTAMP for Makefile by @oferchen in https://github.com/suecodelabs/cnfuzz/pull/58
    • Resource limits for fuzzing jobs by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/59
    • Support rancher desktop by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/61
    • Basic S3 storage support by @Luukvdm in https://github.com/suecodelabs/cnfuzz/pull/60
    • Setup Chart to point to the correct container build by @pcktdmp in https://github.com/suecodelabs/cnfuzz/pull/64

    New Contributors

    • @pcktdmp made their first contribution in https://github.com/suecodelabs/cnfuzz/pull/1
    • @robertscholts made their first contribution in https://github.com/suecodelabs/cnfuzz/pull/2
    • @Luukvdm made their first contribution in https://github.com/suecodelabs/cnfuzz/pull/23
    • @lcmwesterink made their first contribution in https://github.com/suecodelabs/cnfuzz/pull/43
    • @pimmerks made their first contribution in https://github.com/suecodelabs/cnfuzz/pull/40
    • @Oddly made their first contribution in https://github.com/suecodelabs/cnfuzz/pull/48
    • @oferchen made their first contribution in https://github.com/suecodelabs/cnfuzz/pull/58

    Full Changelog: https://github.com/suecodelabs/cnfuzz/commits/v0.0.1-alpha

    Source code(tar.gz)
    Source code(zip)
Owner
Sue B.V. - Cloud Native
Offering high-quality tech services, with a focus on Unix, Linux and open-source software, Sue has been a leading knowledge center for more than twenty years.
Sue B.V. - Cloud Native
A cloud native Identity & Access Proxy / API (IAP) and Access Control Decision API

Heimdall Heimdall is inspired by Ory's OAthkeeper, tries however to resolve the functional limitations of that product by also building on a more mode

Dimitrij Drus 11 Sep 30, 2022
A collection of cloud security icons :cloud::lock:

Cloud Security Icons These icons are published under the extremely permissive Creative Commons Zero v1.0 Universal license. Downloads We provide all i

Aqua Security 118 Sep 23, 2022
Lookup or replace AWS account IDs with their names and vice versa

awsacc A trusty helper for working with AWS account IDs. Working with AWS account IDs often involves more manual effort than necessary. Often account

Christian Bargmann 3 Oct 14, 2021
Amplitude unofficial client for Go, inspired in their official SDK for Node

Amplitude Golang SDK Amplitude unofficial client for Go, inspired in their official SDK for Node. For reference, visit HTTP API v2 documentation. Inst

Renato Almeida 6 Sep 12, 2022
Cheat sheet for Go language with Syntax and their Description.

Go Lang Syntax Cheat Sheet for Go Lang Index General Syntax Formate For Contributers 1. Name of Syntax 2. Syntax with Explaination 3. (Extra Explaina

null 0 Jan 14, 2022
Go library to access geocoding and reverse geocoding APIs

GeoService in Go Code Coverage A geocoding service developed in Go's way, idiomatic and elegant, not just in golang. This product is designed to open

Jerry Zhao 440 Sep 6, 2022
A golang client for the Twitch v3 API - public APIs only (for now)

go-twitch Test CLIENT_ID="<my client ID>" go test -v -cover Usage Example File: package main import ( "log" "os" "github.com/knspriggs/go-twi

Kristian Spriggs 21 May 10, 2021
Auto-generated Google APIs for Go.

Google APIs Client Library for Go Getting Started $ go get google.golang.org/api/tasks/v1 $ go get google.golang.org/api/moderator/v1 $ go get google.

Google APIs 3.2k Sep 28, 2022
Twilight is an unofficial Golang SDK for Twilio APIs

Twilight is an unofficial Golang SDK for Twilio APIs. Twilight was born as a result of my inability to spell Twilio correctly. I searched for a Twillio Golang client library and couldn’t find any, I decided to build one. Halfway through building this, I realized I had spelled Twilio as Twillio when searching for a client library on Github.

Ghvst Code 18 Jul 2, 2021
Sync your bank transactions with google sheets using Open Banking APIs

Sync your bank transactions with google sheets using Open Banking APIs

Alex Russell-Saw 30 Jul 22, 2022
Sync your bank transactions with google sheets using Open Banking APIs

this is a markdown version of the copy on the site landing page: https://youneedaspreadsheet.com You need a spreadsheet ?? Get on top of your finances

Alex Russell-Saw 30 Jul 22, 2022
The MinIO Admin Go Client SDK provides APIs to manage MinIO services

Golang Admin Client API Reference The MinIO Admin Golang Client SDK provides APIs to manage MinIO services. This quickstart guide will show you how to

High Performance, Kubernetes Native Object Storage 31 Sep 22, 2022
lambda-go-api-proxy makes it easy to port APIs written with Go frameworks such as Gin to AWS Lambda and Amazon API Gateway.

aws-lambda-go-api-proxy makes it easy to run Golang APIs written with frameworks such as Gin with AWS Lambda and Amazon API Gateway.

Amazon Web Services - Labs 704 Oct 1, 2022
"there" also called "GoThere" aims to be a simple Go Library to reduce redundant code for REST APIs.

there "there" also called "GoThere" aims to be a simple Go Library to reduce redundant code for REST APIs. Despite the existence of the other librarie

Christoph Krassnigg 37 Sep 19, 2022
Go API Client for NASA's Open APIs

Go Client for Nasa Open APIs Description The Go Client for Nasa Open APIs is a Go Client for the following Nasa Open APIs: APOD: Astronomy Picture of

Ernesto H 3 Sep 24, 2021
Fluent JavaScript API for SharePoint and Microsoft Graph REST APIs

PnPjs is a fluent JavaScript API for consuming SharePoint and Microsoft Graph REST APIs in a type-safe way. You can use it with SharePoint Framework,

Microsoft 365 Community 611 Sep 16, 2022
Http apis with AWS CDK for Go

Http apis with AWS CDK for Go Blog: https://harshq.medium.com/building-apps-with-aws-sdk-for-golang-api-gateway-and-lambda-b254858b1d71 Useful command

Harshana Abeyaratne 1 Jan 4, 2022
The task given by Appointy completed to develop APIs for a basic version of Instagram.

✨ Instagram APIs ✨ The task given by Appointy completed to develop APIs for a basic version of Instagram. Create an User Get User by Id Create a Post

Aayush Chodvadiya 1 Oct 9, 2021
Apis para la administracion de notifiaciones, utilizando servicios como AWS SNS y AWS SQS

notificacion_api Servicio para envío de notificaciónes por difusión en AWS SNS Especificaciones Técnicas Tecnologías Implementadas y Versiones Golang

Universidad Distrital Francisco José de Caldas 0 Jan 7, 2022