Commit Graph
637 Commits
Author SHA1 Message Date
Raj Chowdhury 25333b201f Typo fix (#247)
Fixed Minor typos in README
2019-10-25 11:54:27 -07:00
Nithin-183 bde288ceb3 Update README.md (#237) 2019-10-25 11:42:10 -07:00
Arpit Pandey f61f624d29 Fix typos in code comments (#227) 2019-10-23 19:10:01 +03:00
Ryan Lahfa d424fcd7c8 Use set rather than list to test membership in O(1) (#231) 2019-10-23 18:34:19 +03:00
Itay Shakury 04fc39c810 build article titles from metadata (#238)
* rename id to vid to avoid conflict with jekyll's id

* build article title from metadata
2019-10-23 18:22:37 +03:00
Ramshah Jahangir 59543346d2 updating pul request template (#242)
* updating pul request template

* fixing typos
2019-10-23 18:12:43 +03:00
Itay Shakury 6b4f13e84a update ruby gems used for the kb website (#236) 2019-10-23 14:03:00 +03:00
michizhou d8037434a0 Improved documentation (#201) 2019-10-23 11:16:49 +01:00
suijaa a8428a9445 typo fix in KHV050.md 2019-10-22 09:03:07 +03:00
Sidhya Tikku 6969f02e9b Create PULL_REQUEST_TEMPLATE.md (#222) 2019-10-20 15:41:02 +03:00
Mislav Cimperšak 91e4388e53 adding multiple templates for github issues (#224) 2019-10-20 15:28:49 +03:00
Sidhya Tikku c27bcb48de Update .gitignore (#221) 2019-10-19 15:00:25 +03:00
Soumyadeep Sinha 300fd117c9 Fixed Some typos (#199)
* Fixed some typos

* Fixed some typos
2019-10-18 18:55:47 +03:00
Manuel Rüger 195ce52111 .travis.yml: Simplify and extract dev reqs (#219)
With Xenial being default, the yaml can be simplified.

Also extract requirements for development, so users can install it easily.
2019-10-18 18:03:48 +03:00
SinithH 7f5d81e68e fixed some typos (#195)
* Update README.md

* Update README.md

* Update README.md

* Replace missing "if"

* Update README.md
2019-10-18 17:39:54 +03:00
Aayush SrivastavaandNikita Titov 6a80cdede5 Update README.md (#196)
* Update README.md

Added license details(and linked to the license page) and improved the readability of the README file.

* Update README.md

Co-Authored-By: Nikita Titov <nekit94-08@mail.ru>
2019-10-18 17:32:54 +03:00
Sumit Kharche a877d86c13 Added license & docker image badge (#197)
* Added license badge in README.md

* Removed spaces at end of file.
2019-10-18 16:49:39 +03:00
Manuel Rüger e145f8f4a4 Dockerfile: Use apk with --no-cache (#204)
Signed-off-by: Manuel Rüger <manuel@rueg.eu>
2019-10-18 16:32:16 +03:00
Steffin Stanly 3747b85552 Update README.md (#202) 2019-10-18 16:27:49 +03:00
Mohan Sha 4df3908772 Added table of contents for easier navigation (#211) 2019-10-18 15:58:54 +03:00
Itay Shakury 817070ea30 document api access vulnerabilities (#205)
* document apiinfodisclosure vuln

* fix relative url
2019-10-18 15:50:53 +03:00
Itay Shakury b4029225dd document DNS spoofing vulnerability (#206)
* document dnsspoof vuln

* fix relative url
2019-10-18 15:40:39 +03:00
Manuel Rüger 1395389c62 kb: typo endoint -> endpoint (#214) 2019-10-18 15:32:34 +03:00
Itay Shakury 8602e2a603 fix navigation url when searching for kb article (#210)
* fix navigation url

* add baseurl
2019-10-18 15:16:20 +03:00
Itay Shakury f67c437a36 document kubelet vulns (#209) 2019-10-16 18:28:34 +03:00
godaji 6ff4627f9b Rename camel var to snake style. (#182) 2019-10-15 08:51:35 +03:00
Itay Shakury 4e68ea4e15 Add Knowledge Base for reported vulnerabilities (#188) 2019-10-13 17:10:47 +03:00
SinithH e982f291e9 fixed some typos (#193)
* Update README.md

* Update README.md

* Update README.md

* Replace missing "if"
2019-10-10 10:17:23 +01:00
Itay Shakury 3b13e5980f add contributing guide (#189) 2019-10-10 10:10:27 +01:00
Adam Hauze bed2a1fe4a Updated README to include documentation around python venv (#187)
* Updated README to include documentation around python venv

* Tidy PR

Add link to Virtual Environments docs
Remove Mac-specific instruction about brew
Remove non-installation instructions from installation section

* Tidy PR

Remove run instruction from installation section
2019-10-04 13:09:25 +02:00
Yehuda Chikvashvili bc00bbd058 Change CVE hunters description (#183)
Make CVE hunters description more accurate
2019-10-02 16:32:09 +02:00
Yehuda Chikvashvili a1feb06ec7 Ignore downstream version flag (#181)
* Ignore downstream version flag

This commit adds `--ignore-downstream` flag to kube-hunter.
Enabling the flag will make kube-hunter considering patched versions
as not vulnerable.
Resolves #179

* Add test cases and refine argument description
2019-09-19 21:57:39 +03:00
Pierre-Yves Aillet c4e1e1e48c removing the foot note (#178)
* removing the foot note

the underlying issue has been closed, so the foot note might be removed

* removing another note

spotted another note and reference to the issue in the README
2019-09-08 11:42:23 +03:00
danielsagi e0bacd6e7b New Hunters: DNS spoofing & ARP spoofing (#159)
* added arp passive hunter

* seperated arp and dns hunters, made them active and fixed some coe on arp

* added description for hunters, and refactored description for vulnerabilities

* minor typo

* replaced google.com with 1.1.1.1

* fixed comments

* fixed scapy

* validated output of get_kube_dns_ip_mac
2019-08-29 19:08:53 +03:00
danielsagi a015f259a0 added linkage of previously discovered protocol, on filter (#176) 2019-08-29 16:46:35 +03:00
Yehuda Chikvashvili 8bb8e1f16c Fix plain report with high log level (#175)
This commit fixes issue #108
Report type plain didn't work with log level higher than INFO.
2019-08-29 14:34:44 +03:00
danielsagi 427a295c8c Adding visibility for dispatching (#166)
* minor addition to description

* added documantation in readme

* minor changes to logging levels and formatting

* changed example in readme

* fixed merge

* added info logging to http dispatch method

* changed description from environ to environment variables
2019-08-28 12:18:58 +03:00
danielsagi 0315af75cf Detection for 3 new CVES (#173)
* changed version hunting to be on a a new version disclosure vulnerability

* fixed version publish

* added logging and fixed typo

* changed whole way of comparing versions in cve hunter

* changed K8sVersionDisclosure vulnerability to one core vulnerability, that takes an endpoint. changed all usage

* added tests

* merged kubectl cve hunting with apiserver hunting. and simplified the code of apiserver cve hunting

* fixed tests to new names

* changed name of module to cves.py

* drastically improved the cve vulnerble detection utility function. now works with all types of versioning methods

* added packaging in requirementes.txt

* added another test, and improved logic on cve comparison for more complicated versions

* changed CveHunter to subscribe_once, to prevent duplicates duplicates

* fixed tests for new improvements

* removed unnecessary ternary on doc

* removed unnecessary join split

* improved compare function, made it util

* improved cve checking to use mapping

* added detection for CVE-2019-9512 and  CVE-2019-9514

* added detection for CVE-2019-11247 and added minor comments
2019-08-27 22:03:29 +03:00
danielsagi 2dad27a175 Decrease vulnerabilities on build (#170)
* changed python version to 3.8.rc and removed wireshark from build. also added a plugin to supress scapy's warnings about the manuf

* changed to alpine 3.10, on docker file and removed unnecessary logging suppression

* changed to python 3.7

* changed base image on builder as well
2019-08-27 11:27:17 +01:00
danielsagi 860062abeb Added Metrics Server Discovery - Distinct from Api Server (#167)
* added basic metrics server discovery

* improved discovery, and added KNOWN PORTS usage

* improved apiserver decision

* fixed bug with comparison of IP addresses in kubeservicehost

* improved description of api server discovery

* added checks with auth_token on discovery

* fixed bug in version requests and added to tests

* added an abstract 'unrecognized API' event, and a filter for it for classification

* changed filtering to be done on the same event

* fixed verify on session and removed unnecessary enum

* minor changes to comments

* added detailed explanation
2019-08-27 08:54:08 +01:00
danielsagi 259f707ecd Refactor And Major Bug Fixes in Version and CVE hunting (#162)
* changed version hunting to be on a a new version disclosure vulnerability

* fixed version publish

* added logging and fixed typo

* changed whole way of comparing versions in cve hunter

* changed K8sVersionDisclosure vulnerability to one core vulnerability, that takes an endpoint. changed all usage

* added tests

* merged kubectl cve hunting with apiserver hunting. and simplified the code of apiserver cve hunting

* fixed tests to new names

* changed name of module to cves.py

* drastically improved the cve vulnerble detection utility function. now works with all types of versioning methods

* added packaging in requirementes.txt

* added another test, and improved logic on cve comparison for more complicated versions

* changed CveHunter to subscribe_once, to prevent duplicates duplicates

* fixed tests for new improvements

* removed unnecessary ternary on doc

* removed unnecessary join split

* improved compare function, made it util

* improved cve checking to use mapping
2019-08-27 08:48:47 +01:00
danielsagi 44e6438d37 Changed name of Subnet scanning to - Interface Scanning (#169)
* changed Subnet/internal scanning to interface

* Change one more internal -> interface
2019-08-25 20:40:30 +03:00
danielsagi f5b72d44b5 New Core Feature: Subscribe Once (#168)
* added a subscribe_once decorator

* created tests for core functionality, for now, subscibe and subscribe once
2019-08-13 15:44:41 +01:00
Tom Davidson e3af42cbce Separate report "sending" into modules (#156)
* moved report output into dispatchers, stdout by default with config option of http(s)

* notes in arg config on how to configure http dispatcher

* removed some debug log visibility indicators

* missing import

* env vars more descriptive: KUBEHUNTER_HTTP_DISPATCH_METHOD and KUBEHUNTER_HTTP_DISPATCH_URL

* optimisation: delayed instantiation of the dispatcher until after selection to avoid instantiating unnecessarily

* refactor: config selection as per reporter selection

* bugfix: fall-back to default required if unknown reporter or dispatcher specified

* swapping urllib3 for requests

* corrected visibility levels for logging

* moving dispatchers into a file in reporters rather than it's own place to fit with theme and support dynamic module loading
2019-08-12 13:28:31 +03:00
danielsagi cb90673bcb Added API Server discovery when running as pod (#160)
* added an implementation for scanning api server from env variable, without duplications, when running as pod

* fixed issue with convertion of ip address
2019-08-05 13:25:06 -07:00
danielsagi e5db8b6b28 New Hunter: /var/log mount (#158)
* added pods data on ExposedPodsHandler event, for later use

* added /var/log write mount hunter. in 'mounts' module. also an active hunter which exploits run handler as well

* removed unnecesary variables

* changed active hunter description

* minor changes to vulnerability descriptions
2019-08-01 20:17:57 +03:00
danielsagi 889a77d939 Pyinstaller/py2exe support (#157)
* removed unnecessary imports from main file

* added a script that generates static __init__ files based on existing modules

* added documentation

* added installing of plugins imports to script
2019-07-29 05:47:36 -07:00
danielsagi 91162297b3 Added System Logs Hunting & Improved Kubelet Hunting (#154)
* 1. added /logs Active hunter and tester.
2. changed kubelet handlers enum to be accessible as KubeletHandlers
3. added kubelet requests session to the event chain, for active hunters to use.

* added usage of event.session in the run active hunter
2019-07-10 14:57:25 +03:00
danielsagi 07db108511 Added pprof cmdline hunting (#150)
* added pprof/cmdline debug handler hunting on kubelet

* changed Name and Component of vuln

* removed preceding slash

* added verify=False
2019-07-10 11:37:26 +01:00
danielsagi e4678843c9 Changed kubelet run handler test to be not a state changing operation (#136)
* changed kubelet run handler test to be not state-changing

* changed fake_container name to be more random

* changed run handler to GET and check for method not allowed
2019-07-10 11:29:15 +01:00