Merge branch 'master' into lizrice-patch-4

This commit is contained in:
Liz Rice
2019-02-19 15:33:39 +00:00
committed by GitHub
3 changed files with 25 additions and 6 deletions

View File

@@ -20,8 +20,9 @@ before_script:
- flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
- flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- pip install pytest
script:
- true # add other tests here
- python runtest.py
notifications:
on_success: change
on_failure: change # `always` will be the setting once code changes slow down

23
runtest.py Normal file
View File

@@ -0,0 +1,23 @@
import argparse
import pytest
parser = argparse.ArgumentParser(description='Kube-Hunter tests')
parser.add_argument('--list', action="store_true", help="displays all tests in kubehunter (add --active flag to see active tests)")
parser.add_argument('--internal', action="store_true", help="set hunting of all internal network interfaces")
parser.add_argument('--pod', action="store_true", help="set hunter as an insider pod")
parser.add_argument('--quick', action="store_true", help="Prefer quick scan (subnet 24)")
parser.add_argument('--cidr', type=str, help="set an ip range to scan, example: 192.168.0.0/16")
parser.add_argument('--mapping', action="store_true", help="outputs only a mapping of the cluster's nodes")
parser.add_argument('--remote', nargs='+', metavar="HOST", default=list(), help="one or more remote ip/dns to hunt")
parser.add_argument('--active', action="store_true", help="enables active hunting")
parser.add_argument('--log', type=str, metavar="LOGLEVEL", default='INFO', help="set log level, options are: debug, info, warn, none")
parser.add_argument('--report', type=str, default='plain', help="set report type, options are: plain, yaml")
config = parser.parse_args()
def main():
pytest.main(['.'])
if __name__ == '__main__':
main()

View File

@@ -5,11 +5,6 @@ from ...core.types import Hunter
from ...core.events import handler
from ...core.events.types import OpenPortEvent, Service, Event
class ReadOnlyKubeletEvent(Service, Event):
"""The read-only port on the kubelet serves health probing endpoints, and is relied upon by many kubernetes componenets"""
def __init__(self):
Service.__init__(self, name="Kubelet API (readonly)")
class ApiServer(Service, Event):
"""The API server is in charge of all operations on the cluster."""