Die älteren Semester unter unseren Lesern können sich vielleicht noch erinnern, an die langen Usenet- und Forumsdiskussionen darum, was denn nun ein Hacker ist. Die Abgrenzung zum sogenannten Cracker war dabei genauso relevant wie die Debatte, ob sich denn überhaupt jemand selber als Hacker bezeichnen dürfe, oder ob diese Anmassung den Urheber automatisch als Lamer identifiziert. Allgemein gibt es viel Lingo, die Raum zur Interpretation lässt: Die Begriffe Whitehat, Blackhat und Greyhat wurden oftmals zur Identifikation der ethischen Grundhaltung einer Person genutzt. Aber gerade beim letzteren Begriff, dem Greyhat, geht jede Definition wiederum in einer Masse von Abstufungen moralischer Ambiguität verloren.
Begriffsdiskussionen heute
Auch wenn diese Diskussionen heute abgeflacht sind, so streitet man sich immer noch gerne über Wörter: Mit dem Begriff Cyber wurde in dermassen vielen Marketing-Pitches so sensationalistischer Art um sich geworfen, dass viele Infosec-Profis heute noch nahezu allergisch darauf reagieren – obwohl der Begriff für die breite Öffentlichkeit, inklusive der Geschäftsleitungen und Verwaltungsräte der Firmen für die sie arbeiten, geläufiger und verständlicher wäre als Informationssicherheit oder die Abkürzung Infosec.
Die Diskussion um einheitliche Begriffe geht weiter als man denken möchte: Generische Jobtitel wie Security Analyst sind geläufig, sagen aber wenig aus über die effektiven Kompetenzen, die dessen Träger mitbringt: Das Feld der Informationssicherheit ist derart breit, dass sogar erfahrene Generalisten klar ersichtliche Stärken und Schwächen mitbringen. Gerade bei Stellenausschreibungen wird dann oftmals nicht genau klar, was der Analyst denn nun alles können soll: Um Vulnerability Assessments durchzuführen werden ganz klar andere Vorkenntnisse erfordert als für die Sicherung von forensischen Beweismitteln – zwei Beispiele für Tätigkeiten, die beide durchaus der Rolle eines Security Analysts zugewiesen werden können.
Auch dieses Problem gab es schon früher, in den weniger formellen Zeiten der Security- und Hackercommunity. Eine wirklich Lösung gab es nicht, auch wenn mit Geek Code, einem Codeformat von Robert A. Hayden, in 1993 zumindest ein Lösungsansatz dafür propagiert wurde, wie man die eigene Ausrichtung einigermassen kompakt darstellen könnte.
Bei dermassen vielen Unklarheiten wundert es auch nicht, dass die Definition von Jobtiteln dann auch irgendwann seltsame Blüten treibt: Das Stichwort, das an dieser Stelle gar nicht mehr Beachtung erhalten soll als die pure Nennung, lautet Thought Leader.
-----BEGIN GEEK CODE BLOCK-----
GED/J d-- s:++>: a--
C++(++++) ULU++ P+ L++
E---- W+(-) N+++ o+ K+++ w--- O-
M+ V--
PS++>$ PE++>$
Y++ PGP++ t-
5+++ X++ R+++>$
TV+ b+ DI+++ D+++ G+++++ e++ h r--
y++**
------END GEEK CODE BLOCK------
Dabei wäre eine gewisse Klarheit im Bereich der Cybersecurity durchaus wichtig. Missverständliche oder gänzlich ausbleibende interne Kommunikation ist einer der Kerngründe für falsche Strategieentscheide bezüglich Investitionen in die Sicherheit von Informationssystemen in Schweizer Unternehmen. Abhilfe schaffen soll ein neues Dokument des National Institute of Standards and Technology (NIST), das National Initiative for Cybersecurity Education Cybersecurity Workforce Framework (NICE).
Das 135-seitige Dokument macht einen strukturierten Versuch, die Terminologie für Jobtitel, Kompetenzen und Aufgaben zu vereinheitlichen und damit eine standardisierte Sprache zu schaffen. Diese Standardisierung ist richtig und wichtig, damit auch über Firmen- oder Landesgrenzen hinaus von denselben Dingen gesprochen werden kann. Auch im Hinblick auf Ausbildungen, Arbeitszeugnisse oder andere Leistungsausweise stellen die codierten Fähigkeitsbeschreibungen einen Schritt nach vorne dar. Standardisierung heisst aber nicht zwingend, dass Komplexität reduziert wird. Vielmehr soll eine mögliche Mehrdeutigkeit eliminiert werden, die ansonsten zu Missverständnissen führen könnte.
Eine Standardisierung von Begrifflichkeiten bringt auch mit sich, dass man unter Umständen gewisse Änderungen an der eigenen Kommunikation zu bewältigen hat. So war es auch für den Author des vorliegenden Beitrages etwas seltsam anmutend, dass die Aufgabe der Durchführung von Sicherheitsprüfungen (T0266, Perform penetration testing as required for new or updated applications) den Rollen des Secure Software Assessor (SP-DEV-002) oder des Exploitation Analysts (AN-EXP-001) zugeschrieben werden. Bei näherer Betrachtung sind die Rollenbeschreibungen aber durchaus von Interesse. Wenden wir uns doch einmal dem Exploitation Analyst zu, der dem klassischen Penetration Tester, wie wir ihn bei der scip AG verstehen, am ehesten gleichkommt. Die Definition des NISTs erfolgt in tabellarischer Form. Im Sinne der Analyse haben wir die entsprechenden Tasks, Knowledge-Items, Skills und Abilities nachfolgend zusammengeführt:
Beispiel Exploitation Analyst
Beschreibung
Collaborates to identify access and collection gaps that can be satisfied through cyber collection and/or preparation activities. Leverages all authorized resources and analytic techniques to penetrate targeted networks.
Tasks
- T0028: Conduct and/or support authorized penetration testing on enterprise network assets.
- T0266: Perform penetration testing as required for new or updated applications.
- T0570: Apply and utilize authorized cyber capabilities to enable access to targeted networks.
- T0572: Apply cyber collection, environment preparation and engagement expertise to enable new exploitation and/or continued collection operations, or in support of customer requirements.
- T0574: Apply and obey applicable statutes, laws, regulations and policies
- T0591: Perform analysis for target infrastructure exploitation activities.
- T0600: Collaborate with other internal and external partner organizations on target access and operational issues.
- T0603: Communicate new developments, breakthroughs, challenges and lessons learned to leadership, and internal and external customers.
- T0608: Conduct analysis of physical and logical digital technologies (e.g., wireless, SCADA, telecom) to identify potential avenues of access.
- T0614: Conduct independent in-depth target and technical analysis including target-specific information (e.g., cultural, organizational, political) that results in access.
- T0641: Create comprehensive exploitation strategies that identify exploitable technical or operational vulnerabilities.
- T0695: Examine intercept-related metadata and content with an understanding of targeting significance.
- T0701: Collaborate with developers, conveying target and technical knowledge in tool requirements submissions, to enhance tool development.
- T0720: Identify gaps in our understanding of target technology and developing innovative collection approaches.
- T0727: Identify, locate, and track targets via geospatial analysis techniques.
- T0736: Lead or enable exploitation operations in support of organization objectives and target requirements.
- T0738: Maintain awareness of advancements in hardware and software technologies (e.g., attend training or conferences, reading) and their potential implications
- T0754: Monitor target networks to provide indications and warning of target communications changes or processing failures.
- T0775: Produce network reconstructions.
- T0777: Profile network or system administrators and their activities.
Knowledge
- K0001: computer networking concepts and protocols, and network security methodologies.
- K0002: risk management processes (e.g., methods for assessing and mitigating risk).
- K0003: laws, regulations, policies, and ethics as they relate to cybersecurity and privacy.
- K0004: cybersecurity and privacy principles.
- K0005: cyber threats and vulnerabilities.
- K0006: specific operational impacts of cybersecurity lapses.
- K0108: concepts, terminology, and operations of a wide range of communications media (computer and telephone networks, satellite, fiber, wireless).
- K0109: physical computer components and architectures, including the functions of various components and peripherals (e.g., CPUs, Network Interface Cards, data storage).
- K0131: web mail collection, searching/analyzing techniques, tools, and cookies
- K0142: collection management processes, capabilities, and limitations
- K0143: front-end collection systems, including traffic collection, filtering, and selection.
- K0177: cyber attack stages (e.g., reconnaissance, scanning, enumeration, gaining access, escalation of privileges, maintaining access, network exploitation, covering tracks).
- K0224: system administration concepts for operating systems such as but not limited to Unix/Linux, IOS, Android, and Windows operating systems.
- K0349: website types, administration, functions, and content management system (CMS).
- K0362: attack methods and techniques (DDoS, brute force, spoofing, etc.).
- K0417: data communications terminology (e.g., networking protocols, Ethernet, IP, encryption, optical devices, removable media).
- K0444: how Internet applications work (SMTP email, web-based email, chat clients, VOIP).
- K0471: Internet network addressing (IP addresses, classless inter-domain routing, TCP/UDP port numbering).
- K0560: the basic structure, architecture, and design of modern communication networks.
- K0351: applicable statutes, laws, regulations and policies governing cyber targeting and exploitation.
- K0354: relevant reporting and dissemination procedures.
- K0368: implants that enable cyber collection and/or preparation activities.
- K0371: principles of the collection development processes (e.g., Dialed Number Recognition, Social Network Analysis).
- K0376: internal and external customers and partner organizations, including information needs, objectives, structure, capabilities, etc
- K0379: client organizations, including information needs, objectives, structure, capabilities, etc.
- K0388: collection searching/analyzing techniques and tools for chat/buddy list, emerging technologies, VOIP, Media Over IP, VPN, VSAT/wireless, web mail and cookies.
- K0393: common networking devices and their configurations.
- K0394: common reporting databases and tools.
- K0397: security concepts in operating systems (e.g., Linux, Unix.)
- K0418: data flow process for terminal or environment collection
- K0430: evasion strategies and techniques.
- K0443: how hubs, switches, routers work together in the design of a network.
- K0447: how to collect, view, and identify essential information on targets of interest from metadata (e.g., email, http).
- K0451: identification and reporting processes
- K0470: Internet and routing protocols.
- K0473: intrusion sets
- K0484: midpoint collection (process, objectives, organization, targets, etc.).
- K0487: network security (e.g., encryption, firewalls, authentication, honey pots, perimeter protection).
- K0489: network topology.
- K0509: organizational and partner authorities, responsibilities, and contributions to achieving objectives.
- K0510: organizational and partner policies, tools, capabilities, and procedures.
- K0523: products and nomenclature of major vendors (e.g., security suites – Trend Micro, Symantec, McAfee, Outpost, and Panda) and how those products affect exploitation and reduce vulnerabilities.
- K0529: scripting
- K0535: strategies and tools for target research.
- K0544: target intelligence gathering and operational preparation techniques and life cycles.
- K0557: terminal or environmental collection (process, objectives, organization, targets, etc.)
- K0559: the basic structure, architecture, and design of converged applications.
- K0608: Unix/Linux and Windows operating systems structures and internals (e.g., process management, directory structure, installed applications).
Skills
- S0066: identifying gaps in technical capabilities
- S0184: analyzing traffic to identify network devices
- S0199: creating and extracting important information from packet captures
- S0200: creating collection requirements in support of data acquisition activities
- S0201: creating plans in support of remote operations. (i.e., hot/warm/cold/alternative sites, disaster recovery).
- S0204: depicting source or collateral data on a network map.
- S0207: determining the effect of various router and firewall configurations on traffic patterns and network performance in both LAN and WAN environments.
- S0214: evaluating accesses for intelligence value.
- S0223: generating operation plans in support of mission and target requirements.
- S0236: identifying the devices that work at each level of protocol models
- S0237: identifying, locating, and tracking targets via geospatial analysis techniques
- S0239: interpreting compiled and interpretive programming languages.
- S0240: interpreting metadata and content as applied by collection systems.
- S0245: navigating network visualization software.
- S0247: performing data fusion from existing intelligence for enabling new and continued collection.
- S0258: recognizing and interpreting malicious network activity in traffic.
- S0260: recognizing midpoint opportunities and essential information
- S0264: recognizing technical information that may be used for leads to enable remote operations (data includes users, passwords, email addresses, IP ranges of the target, frequency in DNI behavior, mail servers, domain servers, SMTP header information).
- S0269: researching vulnerabilities and exploits utilized in traffic.
- S0279: target development in direct support of collection operations.
- S0286: using databases to identify target-relevant information.
- S0290: using non-attributable networks.
- S0294: using trace route tools and interpreting the results as they apply to network analysis and reconstruction.
- S0300: writing (and submitting) requirements to meet gaps in technical capabilities
Abilities
- A0013: communicate complex information, concepts, or ideas in a confident and well-organized manner through verbal, written, and/or visual means.
- A0066: accurately and completely source all data used in intelligence, assessment and/or planning products.
- A0080: develop or recommend analytic approaches or solutions to problems and situations for which information is incomplete or for which no precedent exists.
- A0084: evaluate, analyze, and synthesize large quantities of data (which may be fragmented and contradictory) into high quality, fused targeting/intelligence products.
- A0074: collaborate effectively with others.
- A0086: expand network access by conducting target analysis and collection to identify targets of interest.
- A0092: identify/describe target vulnerability.
- A0093: identify/describe techniques/methods for conducting technical exploitation of the target.
- A0104: select the appropriate implant to achieve operational goals.
Obschon die Liste etwas lang gerät, beschreibt sie erstaunlich akkurat viele der Kernkompetenzen, die von einem guten Penetration Tester – oder eben von einem Exploitation Analyst – erwartet werden. Man mag den vereinzelten Tabellen von Wissens- und Fähigkeitselementen zwar vorwerfen, dass sich ihr Detailgrad stark unterscheidet, alles in allem bietet NIST SP 800-181 aber eine nützliche Ressource, um Funktionen innerhalb des Fachgebietes akkurater, und vor allem uniformer, zu umschreiben.
Fazit
Ob sich das NICE Framework und die Rollenbeschreibung in dieser Form durchsetzen können und bald zu eindeutigen Job Descriptions führen, ist fraglich. Vielen Organisationen fehlt, nach wie vor, ganz grundsätzlich der Überblick über die eigenen Anforderungen, den Sicherheitsbedarf und die eigenen Ressourcen.
Trotzdem: Ein Schritt in die richtige Richtung ist das Papier allemal, wenn auch schon nur um einen Überblick über die vielfältige Natur der Informationssicherheit und der ihr unterliegenden Rollen und Aufgaben zu erhalten.
Über den Autor
Stefan Friedli gehört zu den bekannten Gesichtern der Infosec Community. Als Referent an internationalen Konferenzen, Mitbegründer des Penetration Testing Execution Standard (PTES) und Vorstandsmitglied des Schweizer DEFCON Group Chapters trägt er aktiv zum Fortschritt des Segmentes bei.
Links