Journal of Digital Forensics, Security and Law

Volume 13 Number 3 Article 6

9-30-2018

Ontologies and the for Digital Investigation Tool Selection

Hayden Wimmer Georgia Southern University, [email protected]

Lei Chen Georgia Southern University, [email protected]

Thomas Narock Notre Dame of Maryland University, [email protected]

Follow this and additional works at: https://commons.erau.edu/jdfsl

Part of the Computer Law Commons, and the Information Security Commons

Recommended Citation Wimmer, Hayden; Chen, Lei; and Narock, Thomas (2018) "Ontologies and the Semantic Web for Digital Investigation Tool Selection," Journal of Digital Forensics, Security and Law: Vol. 13 : No. 3 , Article 6. DOI: https://doi.org/10.15394/jdfsl.2018.1569 Available at: https://commons.erau.edu/jdfsl/vol13/iss3/6

This Article is brought to you for free and open access by the Journals at Scholarly Commons. It has been accepted for inclusion in Journal of Digital Forensics, Security and Law by an authorized administrator of (c)ADFSL Scholarly Commons. For more information, please contact [email protected]. Ontologies and the Semantic Web for Digital ... JDFSL V13N3

ONTOLOGIES AND THE SEMANTIC WEB FOR DIGITAL INVESTIGATION TOOL SELECTION Hayden Wimmer Department of Information Technology Georgia Southern University Statesboro, GA USA [email protected]

Lei Chen Department of Information Technology Georgia Southern University Statesboro, GA USA [email protected]

Thomas N arock Department of Math, Physics, and Computer Studies Notre Dame of Maryland University Baltimore, MD USA [email protected]

ABSTRACT The nascent field of digital forensics is heavily influenced by practice. Much digital forensics research involves the use, evaluation, and categorization of the multitude of tools available to researchers and practitioners. As technology evolves at an increasingly rapid pace, the digital forensics field must constantly adapt by creating and evaluating new tools and techniques to perform forensic analysis on many disparate systems such as desktops, notebook computers, mobile devices, cloud, and personal wearable sensor devices, among many others. While researchers have attempted to use ontologies to classify the digital forensics domain on various dimensions, no ontology of digital forensic tools has been developed that defines the capabilities and relationships among the various digital forensic tools. To address this gap, this work develops an ontology using Resource Description Framework (RDF) and Ontology Web Language (OWL) which is searchable via SP ARQL ( an RDF query language) and catalogues common digital forensic tools. Following the concept of ontology design patterns, our ontology has a modular design to promote integration with existing ontologies. Furthermore, we progress to a semantic web application that employs reasoning in order to aid digital investigators with selecting an appropriate tool. This work serves as an important step towards building the knowledge of digital forensics tools. Additionally, this research sets the preliminary stage to bringing semantic web technology to the digital forensics domain as well as facilitates expanding the developed ontology to other tools and features, relationships, and forensic techniques.

@ 2018 ADFSL Page 21 JDFSL V13N3 Ontologies and the Semantic Web for Digital ...

Keywords: Ontology, Digital Forensics, Computer Forensics, Forensic Tools, Resource Description Framework, Ontology Web Languages, SPARQL

l. INTRODUCTION FTK with third party forensic tools ( Chan 2011). Third, on account of the rapid Digital forensics (DF) is a branch of forensic advancement of DF, new tools, new versions science that emerged in recent years. It and new features emerge on daily basis to meet comprises the science and practices of the demand, which imposes a challenge to discovering, acquiring, preserving, analyzing, investigators to choose the right tools and and presenting digital evidence potentially features for investigation. For example, a DF related to crime (Carrier 2003, Reith, Carr, tool capable of scanning the computer Random and Gunsch 2002). There is a long list of DF Access Memory (RAM) on an older version of tools, each of which facilitates one or more DF Windows for possible digital evidence may not steps in the above process. Moreover, each DF be able to accomplish the same task on a new tool has its own forensic capabilities and version of Windows. Likewise, a DF tool for features and may only be compatible with running on desktop or notebook operating certain operating system( s) and devices. systems may not excel on a smart phone, a Therefore, to solve a digital crime case in an tablet device, or a virtual cloud environment. efficient and accurate manner, a DF Moreover, the emergency of new targets like investigator must select the competent and IoT and smart-home technology require suitable tool( s) for completing the assigned advancement of DF technologies. Fourth, but tasks. not the least, the specifications and features DF investigators often encounter the (listed on official website or in documentation) following challenges when selecting the tools of a tool may not accurately describe the tool's for their investigation. First, many real capability or in a way understood by an investigators work for small paralegal or investigator. For example, while many tools private investigator companies and their have the feature of making forensic image of running budget would not allow them to use the evidence hard drive, very few of them list the costly DF tools, such as Encase or FTK. In the tested imaging speed in specifications or such situation, they have to rely on the less data sheet. However, investigators are eager to expensive or free tools, such as The Sleuth Kit be aware of such metrics when comparing and or Autopsy, Digital Forensics Framework and selecting tools. Another example is that most Wireshark. Second, even for investigators with tools can search keywords in acquired image of abundant budget, each tool, including the class evidence hard drive, but not every single tool leading Encase and FTK, has its own can search keywords within the slack space, limitations. For example, many users consider the areas in a hard drive cluster that are not Encase provides its feature in a complex way used by the operating system after the end of a in terms of user interface and design patterns. file. It has also been reported that Encase has In this work, we aim to aid the digital limitation in terms of end user training and forensic practitioner via cataloging popular live search features (Simon 2012). As for FTK, software tools and their respective features and it suffers with long response time when used capabilities ( tested and observed by us, as end for analyzing evidence across networks. Also, users in the field) for both mobile and desktop users may find it difficult trying to integrate

Page 22 @ 2018 ADFSL Ontologies and the Semantic Web for Digital ... JDFSL V13N3 devices. In order to express the relationships The semantic web was coined as a term to among the tools and capabilities, we employ an describe a that was able to be ontology coded in OWL. Our use of the processed and understood by machines and emerging ontology design pattern standard viewed as the future of the web (Berners-Lee, facilitates extending the knowledge coded Hendler, and Lassila 2001). Ontology within the ontology to support the reuse and development has evolved into a collection of fast searches of tool features and capabilities. Semantic Web technologies that now includes Our design supports integration with currently software tools and methodologies. Ontologies available ontologies.1 also promote sharing, re-use, extension, and collaboration. Ontologies are defined as the explicit, formal, conceptualization of a domain (Gruber 2. 2 Re1ated Digital Forensic 1993) and can be used to encode a common Ontology language, and set of relationships, within a domain. Ontologies stem from ancient The use of ontologies in the digital forensics philosophy and have been adapted into other (DF) domain is sporadically represented in the fields such as geosciences (N arock and Fox academic literature with a wide range of 2015) applications; therefore, exploring the use of ontologies m DF is considered to have Following the implement of the ontology, enormous potential. Schatz, Mohay, and Clark we develop a semantic web application using (2004) developed the FORE system for open source tools to demonstrate the reasoning Forensics of Rich Events which stores events in potential for ontologies and semantic web in an OWL ontology to represent change of state the digital forensics discipline. Our application of an event. RDF, or resource description aids digital forensics investigators in selecting a framework, has the ability to create graph DF tool and suitable alternatives via exploiting structures which were employed by ( Giova reasoning over the relationships within the 2011) to strengthen the chain of custody. ontology. There is a need to standardize the DF field The remainder of this paper is organized as which can be solved in part by the use of follows: section 2 presents relevant literature, ontologies. Brinson, Robinson, and Rogers section 3 details our ontology, section 4 (2006) create an ontology of the DF domain, presents the application prototype, and section more specifically cyber forensics 2. The authors 5 concludes the work. classify the domain into technology containing 2. LITERATURE REVIEW subclasses hardware and software and include professions with subclasses law, academic, 2 .1 Ontology and Semantic -Web military, and private sector. Each subclass was further subdivided with their cyber forensics Ontologies have long been used to define a ontology classifying the domain at six levels of domain and are increasingly becoming depth. In a similar and related effort (same standardized within domains. For example, academic department), Harrill and Mislan W3C has recently defined an ontology for (2007) develop an ontology of small scale semantic sensor networks and various medical digital devices such as smart phones, PDAs, fields, e.g. Bio Portal (2013). and their respective software. One limitation of

1 https:/ / www.w3.org/ TR/ 2016/ WD-vocab-ssn- 20160531 / 2 Cyber Forensics is a specialization of Digital Forensics

@ 2018 ADFSL Page 23 JDFSL V13N3 Ontologies and the Semantic Web for Digital ... the aforementioned ontologies is the lack of (Kahvedzic and Kechadi 2009) and extended defined relationships beyond the parent child an application to use the ontology. DIALOG relationship thereby not leveraging the full was designed to be general with specific potential of ontologies. More recently, Karie concepts where necessary in order to facilitate and Venter (2014) develop an updated its use in applications. Casey, Back, and ontology of the DF discipline and classify Barnum (2015) develop an ontology called the aspects of the domain such as software, Digital Forensic Analysis eXpression, or computer, multimedia, , device, DFAX, to provide domain specific information network, telecom, , and wireless to be integrated into CybOX (Cyber forensics. Observable eXpression), a language developed in collaboration between industry and Hoss and Carver ( 2009) recognize the academic to promote consistent capture and potential for ontologies in DF and propose transfer of cyber content. DFAX leverages deploying ontologies to integrate and develop relationships beyond parent and child, now automated forensic analysis tools. Using represented as the RDF subClassOf, by ontologies to guide search was developed into a incorporating typical relationships such as proof of concept by Slay and Schulz (2014) "has-a", "is-a", as well as custom defined where a prototype application was constructed relationships. on top of an ontology and shows to improve searching and filtering the mass amounts of 3. ONTOLOGY MODEL forensic computing data. 3.1 Development Continuing the nascent stages of ontologies in DF, Cosic and Cosic (2012) develop an The application of ontologies in many diverse ontology as a taxonomy of digital evidence in fields has led to an evolution in ontology order to prevent misunderstandings of engineering. Initially, moderate to large important concepts in digital evidence. The domain ontologies were the norm. These evidence collection process was coded as an ontologies attempted to model an entire ontology by Park, Cho, and Kwon (2009) application area ( domain or sub-domain) where authors went beyond the basic within one ontology. While this may have been taxonomy of parent and child classes and useful for the given application, it led to began constructing more meaningful limited reuse of those ontologies. The RDF and relationships among the concepts in the OWL languages do not allow selective imports ontology. Alzaabi (2013) also defined of semantic statements and ontology engineers relationships in their proposed domain and were forced to reuse entire domain ontologies. application ontology of a smart phone This leads to two major challenges. First, environment. Furthering the work, Alzaabi, universal agreement on concept hierarchies and Jones, and Martin (2013) proceed into the term relationships is infeasible, if not semantic web domain discussing the role of impossible, in many scientific domains ontologies in the semantic web and the RDF (Janowicz and Hitzler, 2012). Second, the standard and further their prior smart phone underlying semantics of the logical languages ontology development. OWL and RDF can lead to complex ontology models that are difficult for humans to DIALOG, or Digital Investigation understand (Blomqvist et al., 2015). As a Ontology, developed an independent result, ontology reuse has been limited in vocabulary and worked towards encapsulating practice. all concepts and relationships in the DF field

Page 24 @ 2018 ADFSL Ontologies and the Semantic Web for Digital ... JDFSL V13N3

To combat this, the field of ontology system(s) the software is capable of analyzing. engineering is moving toward so-called For example, a given DF tool may install on Ontology Design Patterns (ODPs). ODPs were Linux, but be capable of analyzing Linux, introduced independently by Blomqvist (2005) Windows, and OS X-based systems. Of note is and Gangemi (2005) and are analogous to our use of the OWL 2 role chain in modeling Software Design Patterns. The intention with Operating System Compatibility. The ontology ODPs is to design several small reusable contains the rule that if a DF software tool ontologies that each only model one particular contains a feature that is compatible with a aspect of a domain. This facilitates ontology given OS then that software tool is compatible reuse along several dimensions (Blomqvist et with the given OS. This limits the amount of al., 2015). Ontology engineering with ODPs data input required by ontology users and has been systematically practiced within U.S. allows applications to leverage automated ontology workshops since 2012 (Hitzler et al. , reasoning. 2015) and has seen successful reuse and Also of note is the transitive and integration in multiple domains (Narock et al., symmetric relationship hasSimilarFeature. 2014; Krisnadhi et al. , 2015) . This property allows analysts to relate features The ontology model presented in this work among DF software tools. For instance, one is distinctive in that it leverages ODP may want to link the feature Registry hive principles as well as the recent OWL 2 carving with Registry rebuilding given that standard (Hitzler et al. , 2012). Specifically, we they both operate on the Registry. The have designed an ODP modeling the features transitive and symmetric aspects of this of software within the DF domain and have property mean that machine reasoning can done so leveraging advanced modeling afforded exploit a minimal set of hasSimilarFeatures to by OWL 2. The modular nature of the infer additional statements. For example, if resulting ODP means that it can be reused analyst A links feature Fl to feature F2 and easier and better facilitate alignment and analyst B links feature F2 to feature F3, then integration within the DF domain. The OWL 2 reasoning can infer that Fl is related to F3 by features lead to automated reasoning the transitivity and also that F2 is related to capabilities that make application development Fl and F3 is related to F2, both from the easier and more efficient. symmetric nature of the property. Figure 1 illustrates the relationships among classes in 3. 2 ReJationships the ontology. Figure 2 shows results of Our DF ODP is shown graphically in Figure 1. selecting the registry_ analyzer feature when Solid blue lines indicate sub-class relationships. reasoning is not activated. Note, that only one Dashed lines indicate a "has-a" relationship as connection to registry_ analyzer exists. Figure m Software has-an Operating System it 3 demonstrates the capability of reasoning as operates on. The ontology distinguishes among when the reasoner is activated, selecting Operating System Capability and Operating registry_ analyzer recursively returns the System Compatibility (for space this is inferred relationships. Figure 4 shows a subset collapsed in Figure 1). The former models the of the relationships in the ontology, specifically operating system on which the software is the relationships of registry_ analyzer. installed while the latter models the operating

@ 2018 ADFSL Page 25 JDFSL V13N3 Ontologies and the Semantic Web for Digital ...

Us erlnt erface SoftwareType

,/ / / / .,,. ff / / /

So ftware

Figure 1 Illustrated relationships among classes in the ontology

Types ij Objectpropertyamrtions ij ♦ Port_scan I Feature ■ hasS i milarFeature Registry_hive_carving ♦ Rainbow _tables J or_password _cracking OIOQ ♦ Reads_ deleted_ messages _from _the _5IM _card ♦ Recover_backups Samelndividual/.s o Datapropertyamrtions O registry_analyzer

♦ registry_ archive Differenllndividuals O Negaliveobjeclpropertymertions O ♦ Registry_hive_carving ♦ Registry_rebuilding Negalivedalapropertyamrtions O ♦ registry_restore ♦ Report_ edttor ♦ Restore _files ♦ Resurrection_ of_ Windows_ Registries _long_ since Jor ♦ Seamless_ access _to_ all_instances _of_ keys_ and_ val

Figure 2 Results without reasoning activated

Page 26 @ 2018 ADFSL Ontologies and the Semantic Web for Digital ... JDFSL V13N3

ICguq llLGAJGM llJqnL61 -gccs1no-gll-JUlj9UC61-0f ~6A1-9UQ-A91 JOU-Of MJUQOM1-KMJlJLJ6nou0-1JUC6-!0L ]161 jJIOL l6ljOL6 1spn11q1ua P!A6-C9V.JUO 1 µ9a21w11 9lt69 (flL6 LGa1ap),-LGaroL6 lLCpJAG oc ■ µ9a 21w11 9lt69PlL6 ~Ga1ap),-L6pn11q1ua oc pgc~nb1 I µ9121Wll9lt69µ7l6 LGa1ap),-9LcµIA 6 OG :1s1sq-WG119061-ILOW-(V6-2JH-mq ■ µ 9121Wll 9lt69 µ7l6 LGa1 ap),-9U9~S6l ·1gp1sqocbmM01q-c1gc~1ua oc 080Q 1 pg121w11nlsg1n1s KMJlJL,CpJA6-C9V.JUO 000G OPl"1b1ob;ljl,u;~ou1 Figure 3 Results with reasoning activated

I *

♦ regstry_restor

Figure 4 Expanded illustration of relationships in instances of Feature

@ 2018 ADFSL P age 27 JDFSL V13N3 Ontologies and the Semantic Web for Digital ...

4 . IIVIPLE1\,1ENTATION3 4 .1 SPARQL Endpoint SP ARQL, or SP ARQL Protocol and RDF Query Language, is a language similar in structure to SQL that is used to interact and query RDF graphs. A SP ARQL endpoint is a SP ARQL Protocol for RDF compliant service that permits queries against an RDF, or similar knowledge-based ontology development languages. Oftentimes, the endpoint interacts with machines and returns results in a machine understandable format; however, humans also interact with the endpoint. Endpoints can be employed to foster ontology sharing and reuse. A vast array of software is available for endpoint hosting. Virtuoso from Open Link software4 , is an open source, full featured, and well adopted platform for implementing SP ARQL endpoints. The example in Figures 5, 6, and 7 demonstrate the basic configuration necessary to setup a SP ARQL endpoint on Virtuoso. Once Virtuoso is installed on the system, it is necessary to upload the ontology via the Virtuoso Conductor. The ontology in this paper was created using OWL which is a supported format. Once logged into Virtuoso Conductor as illustrated in Figure 5 via port 8890 for default installation ( e.g. http:/lhostname:8890), navigate to the "Linked Data" tab. Figure 6 shows the process of uploading an OWL file to Virtuoso and Figure 7 shows issuing a query in the Virtuoso web interface.

3 Code for our implementation is available upon request to the corresponding author. 4 http://virtuoso.openlinksw.com/dataspace/doc/dav/wiki/ Main/

Page 28 @ 2018 ADFSL Ontologies and the Semantic Web for Digital ... JDFSL V13N3

Hom e System Admin Database Replication Web Application Server XML Web Services NNTP

Enterprise Web Data Services Management Platform Veiwon 0 7 20 32 17 Build:Apr 252010

Business Enterprise Col laboration

Figure 5 Virtuoso Conductor Home Screen

Home 1 Database Replication Web Application Server XML Web Services l Linked Data NNTP i SPARQL Sponger Graphs Schemas Namespaces Views Quad Store Upload Sto e load

® Fil e" I Choose Fil e ID FProp.owl 0 Resource URL" D Create graph expli citly Named Graph IRI• lhtt p:l/loca lh ost: 8890/DAV

Figure 6 Uploading New Linked Data from OWL File

@ 2018 ADFSL Page 29 JDFSL V13N3 Ontologies and the Semantic Web for Digital ...

Interactive SQ L (I SQL) Replication Web Application Server Web Services Lin ked Data NNTP j Schemas Namespaces Quad Store Upload

Documentation (web)

Tutorials (web} Query Saved Queries

_ Virtu oso We b Site Default Graph IRI _ Ope nlink Software Oueru PREFI X r df : ¼ 15-Xln: 07.20 .3217 PREFIX owl : Build: Apr 25 20 16 PREFI X rdf s : PREFI X x sd : SELECT ?s ubject ?object \✓ H E R E { ?subj ec t rdf s : s ubCl assOf ?obj ect }

Figure 7 Issuing a SP ARQL Query in the Virtuoso web interface

4. 2 Connecting Application to Framework 6 which was developed to build Endpoint semantic web and linked data applications in Java. Installing Twinkle consists of Once a SP ARQL endpoint is established and downloading a compressed (zip) file and published to the World Wide Web, users can extracting it to the hard drive on a computer. utilize the endpoint to process SP ARQL Twinkle is coded in Java; therefore, the queries. This demonstration illustrates how to appropriate Java Runtime Environment must connect a popular graphical SP ARQL Query be installed on the computer in order to tool, Twinkle5 , to the previously configured execute the program. Opening Twinkle consists SP ARQL endpoint. Twinkle is a graphical user of launching the .jar file (Java Archive) which interface to the ARQ SPARQL engine. ARQ is is extracted in the previous step. Once Twinkle an open source query engine licensed by the is running, one may connect to an endpoint Apache foundation as part of the Jena

5 http://www.ldodds.com/projects/twinkle/ 6 https://jena.apache.org/download/index.cgi

Page 30 @ 2018 ADFSL Ontologies and the Semantic Web for Digital ... JDFSL V13N3 and issue a query. Figure 8 illustrates the issued a simple query that requests objects Twinkle application connecting to a base that are subclasses of other objects. Although Uniform Resource Identifier (URI) which is not shown in this example, it is important to configured as part of the ontology development note that SP ARQL supports sending a query process and can be found in the respective to multiple endpoints. In fact, portions of a RDF or OWL file. Next, the Internet address query can be answered by different endpoints of the endpoint is input as the Data URL. and the results combined into a final result, Finally, the user constructs the SP ARQL which is then displayed to users. Thus, within query and retrieves results by clicking the a semantically enabled DF field queries can be button labeled "Run." In this example, we answered in a distributed fashion.

~ Twinkle: 5PARQL Tools Fil e -Edit Q uery Select Query Task '!M• untitled ~ - [!] Save [> Run O Cancel ~ General ~ Base URJ Ih ttp: /fwww .semanticweb.org/hwimmer/ ontologies/df# [i Write Simple Query Data URL Ih ttp:/ ~ocalhost: 8890/DF ii I ~ PRE FIX rdf : ei In Memory ® PRE FIX owl : < h ttp: //www . w3 . o r g / 2002/ 07/ owlf> PRE F IX rdfs : < h ttp : //www . w3 . org/ 2000/ 0 1/r df-sc h e maf> Periodic Table PRE FIX x sd : Planet RDF Feed & Blogroll SEL.ECT ?s ubj e ct ?object WHERE { ?s ubject r dfs : s ubClassOf ?obj ect } ft Inferencing © Planet Feed (RDFS)

Ilj Persistent Stores @ subject object http :/fwww .semanticweb. org/hwimmer/ ontologies/df #Software -6245bc7c: l56c29 50 244:-7fa5 ~ Remote Services @ http:/fwww .semanticweb.org/hwimmer/ ontologies/df# Software -6245bc7c: l 56c2950244:-7fa6 http :/fwww .semanticweb.org/hwimmer/ ontologies/df #Mobil e http :/fwww .semanticweb.org/hwimmer/ ontologies/df #Software DBpedia.org http:/fwww .semanticweb.org/hwimmer/ ontologies/df#D esktop nttp :/fwww .semanticweb.org/hwimmer/ ontologies/df #Software GovTrack.us Reyvu,com

Figure 8 Twinkle interface and SP ARQL query execution

4 . 3 Searching with SPARQL We provide here two sample SP ARQL queries to demonstrate the benefits of our ontology, and semantic technologies in general.

@ 2018 ADFSL P age 31 JDFSL V13N3 Ontologies and the Semantic Web for Digital ...

PREFIX df: PREFIX df: Query 2 demonstrates additional reasoning < htt2:/_/_www.semantic < http://www.semantic capabilities exploited within our ontology. We web.org/_hwimmer / ontol web.org/ hwimmer / ontol included the capability to tag features as being ogies/_df# > ogies/ df# > similar to each other. Using the OWL SELECT ?software SELECT ?fe ature constructs of transivity and symmetry, we can WHERE { WHERE { infer all possible combinations of the similarity df:registry _ analyzer ?software a df:Software. relationship and not burden the analyst with df:hasSimilarFeature ?software ?feature . } having to manually encode this information. df:hasOSCompatibility This capability also adds a social and "android". } distributed component to our work. Analysts can tag features as being similar to each other, Query 1: Find software Query 2: find features which can then aid other analysts in future that is compatible with similar to searches. As mentioned previously, SPARQL android "registry_ analyzer" via transitive property supports distributing queries to multiple endpoints. In this manner, one can envision a distributed DF semantic infrastructure in Query 1 searches a knowledge-base for all which the t ags of multiple DF analysts are software that is compatible with the Android exploited and combined. operating system. This query leverages the reasoning capabilities of semantic technologies 4 . 4 Seman.tic Web Application as well as demonstrates advanced features of for Digital fuvestigator Decision OWL 2. Our ontology includes a so-called rule Support chain, which in effect is an if-then type statement that a reasoner can evaluate. Within In order to support the decision-making our ontology, DF software has features and process of Digital Investigators, we developed a those features are capable of operating on simple tool to aid in locating similar features. certain operating systems. We have built into Oftentimes, Digital Investigators are not our ontology the statement that "if a particular trained in the multitude of tools and Software has a feature that operates on a given techniques available. Even with training, the OS, then the Software operates on that OS". rapid pace at which technology evolves, tools As discussed in future sections, the collection and techniques change faster than investigators of Semantic Web technologies includes can learn and adapt. Based on this, it is reasoning software that enables automated prudent to provide software and tools to deductions to be inferred. One way that our support investigators in selecting tools and ontology differs from previous research is that techniques. The adherence to the Ontology it exploits more of these automated reasoning Design Pattern (ODP) methods insures our capabilities to lessen the amount of data that ontology can be extended and reused. an analyst must manually import. For Specifically, we have provided a pattern for instance, an analyst can simply describe a modeling DF software and its features. This software's features and the operating systems ontology design pattern provides a reusable they operate on and our application can template that can be used by any semantic automatically infer additional statements that web enabled application. In addition to must hold such as the software being extension and reuse, leveraging the reasoning compatible with those operating systems. capabilities of semantic web-based applications facilitates automated relationship discovery and recommendations. Figure 9 illustrates a

Page 32 @ 2018 ADFSL Ontologies and the Semantic Web for Digital ... JDFSL V13N3 prototype interface to our underlying Java­ and the aforementioned SPARQL endpoint. In based application. The front-end GUI could be the following example, a Digital Investigator is developed using any language that can employ selecting a feature, registry_ analyzer, and Java such as a pure Java-GUI or a web-based examining software that supports the feature application that makes use of Java Servlets and suggestions on related features.

Select a Feature Software that supports selected Feature(s) Ireg istry_a nalyzer Registry_hi ve_ carving

Suggested/ Related Fea'.ure registry_a nalyzer registry _archive registry_re building registry_re store

Figure 9 Prototype GUI for Digital Investigator Tool Selection

Figure 10 illustrates the Java code to reasoner to the Jena model. There are many instantiate the class via the main method and reasoners for various applications and the the method to instantiate the reasoner. In the decision on which reasoner fits a specific main method, first , a new instance of the class application is important in order to achieve the is instantiated. Next, a Jena model is proper level and type of reasoning. In this instantiated, and the OWL file is read in from instance, ONT_ MEM_RULE_ INF is selected the file system. Next, a query is processed to provide a transitive class-hierarchy followed by closing the model. The method inference. createDFModel demonstrates how to apply a

@ 2018 ADFSL Page 33 JDFSL V13N3 Ontologies and the Semantic Web for Digital ...

public st at i c vo i d mai n(St ring [) args ) throws Except i on

DF dfMo del = new DF (); //Create Basic Knowledge Model dfModel .createDFModel ();

//Populate with your DF data (local file) dfMo del .readDFOWLf r omFile () ;

dfMo del .getQuery();

// Close the model dfMo del .close () ;

pri vat e vo i d creat eDFMo del () { _dfMo del = Mo delFactory.creat eOntol ogyModel (OntMo del Spec .OWL_MEM_RULE_I NF );

Figure 10 Main Method and Creation of the Ontology Model with Reasoning Activated

The method readDFOWLfromFile, in Next, the file is input into the Jena Ontology Figure 11 , surrounds the file input stream Model class. This corresponds to the method in a try/ catch block to trap an error in dfModel.readDFOWLfromFile() line m the the event the file is not found, incorrectly main method in Figure 10. Once this method formatted, etc. First , a J ava IO is executed, the OWL ontology is input into a InputStreamReader is instantiated which reads Jena model and transitive class-hierarchy has the OWL ontology from the local file system. already been applied to the reasoner.

p riv a t e voi d r e a dDFOWLfr omFile () { try {

S ystem . out . pri ntl n ( 11 readBCOWLfromFile 11 );

InputSt r e am meFile = FileMana ger . g e t () . ope n ( 11 ont/ df728_wimmer.owl 11 ) ; _ d fModel . rea d (me File , defa u l tNam.eSpa c e ) ;

me F ile .. c l ose () ; } catch ( IOExcepti on i o ) { Syst em .. out .. p rintl n ( 11 File Error: 11 + i o .. g e t Messa g e ()); }

System . out .. p r i ntl n ( 11 read is done 11 ) ; }

Figure 11 Reading OWL Ontology into Jena Framework

Figure 12 demonstrates the code to execute SPARQL query as standard text. The a SP ARQL query against the Jena Ontology SP ARQL query in this example corresponds to Model. First, a Java String is created with the the SPARQL query explained in Query 2.

Page 34 @ 2018 ADFSL Ontologies and the Semantic Web for Digital ... JDFSL V13N3

After creating the string with the query, a from the query. As noted in previous examples, Jena Query object is instantiated and the only relationship of registry_ analyzer is QueryFactory. create(queryString) is called to registry_ hive_ carving. Registry_ rebuilding, generate a Jena query based on our string registry_ restore, and registry_ archive is input. Next, a QueryExecution class is created automatically inferred by the Jena reasoner. and the query is executed via the This result shows that even if a Digital QueryExecutionFactor. create method. Finally, Investigator only knows about the a Jena ResultSet is created via executing the registry_ analyzer feature, the system will not query created in the previous line. ResultSet only recommend its direct relationships but the myData now has the results of the query. entire set of relationships. This behavior can be Omitted from this example is the code that configured based on the type of reasoner loops through myData and sends the output to applied in the createDFModel() method. the standard out. Figure 13 shows the output

private void getQuery() I String querySt ring = "PREFIX rdf: " + "PREFIX owl: " + "PREFIX : " + "PREFIX xsd: " + "PREFIX df: " + "SELECT ?feature WHERE { " +

) II , "df:registry_analyzer df:hasSimilarFeature ?feature • I

Query query = QueryFactory .create(querySt ring ) ; QueryExecuti on qexec = QueryExecutionFactory .create(query, _dfMo del);

Resul tSet myData = qe xec.execSelect () ;

Figure 12 Execution of a SP ARQL Query

( ?fea ure = ) in while ( ?fea ure =) in while ( ?feature = ) in while ( ?fea ure =)

Figure 13 Results from Query with Reasoner Activated

@ 2018 ADFSL Page 35 JDFSL V13N3 Ontologies and the Semantic Web for Digital ...

5. CONCLUSION

In this work, we seek to bring semantic web technologies to improve and support the decision process of digital investigators for digital forensic tool and feature selection. First, we employed the concept of Ontology Design Patterns (ODP) for development of a digital forensic tool ontology. The most common open and closed source software tools for digital forensics were researched and cataloged in our digital forensics ontology which was coded on the ontology web language (OWL). We created relationships among software, tools, capabilities, operating systems, mobile versus desktop, to name a few. Next, we illustrate the power of reasoning to automatically infer relationships within the ontology. We progress toward developing a semantic web-based application complete with reasoning capabilities by demonstrating the configuration of a SP ARQL endpoint server. Next, we connect a popular GUI front end application to our SPARQL endpoint. We then illustrate some basic, but powerful, SP ARQL queries and advance to a prototype semantic web application written in Java. The application demonstrates how reasoning can be built into an application to support the decision process of a digital investigator selecting tools for device analysis. This work has provided an important step of illustrating how semantic web technologies can be employed in the digital forensics community in a real-world application. The ontology can be extended and re-used to improve the cataloguing of tools and techniques while our applications and demonstrations illustrate the potential of semantic web technologies m the digital forensics community.

Page 36 @ 2018 ADFSL Ontologies and the Semantic Web for Digital ... JDFSL V13N3

REFERENCES 2013. "BioPortal." electronic digital systems." International Journal of and Network Alzaabi, Mohammed. 2013. "Ontology-based Security 11 (1):1-9. forensic analysis of mobile devices." Electronics, Circuits, and Systems Gruber, T.R. 1993. "A Translation Approach (ICECS), 2013 IEEE 20th International to Portable Ontology Specification." Conference on. Knowledge Acquisition 5 (2):199-220. Alzaabi, Mohammed, Andy Jones, and Thomas Harrill, David Christopher, and Richard P Anthony Martin. 2013. "An ontology-based Mislan. 2007. "A small scale digital device forensic analysis tool." Proceedings of the forensics ontology." Small Scale Digital Conference on Digital Forensics, Security Device Forensics Journal 1 (1):242. and Law. Hoss, Allyson M, and Doris L Carver. 2009. Berners-Lee, T , J Hendler, and O Lassila. "Weaving ontologies to support digital 2001. "The Semantic Web - A new form of forensic analysis." Proceedings of the 2009 Web content that is meaningful to IEEE international conference on computers will unleash a revolution of new Intelligence and security informatics. possibilities." Scientific A merican:34-+. Kahvedzic, Damir, and Tahar Kechadi. 2009. Brinson, Ashley, Abigail Robinson, and Marcus "DIALOG: A framework for modeling, Rogers. 2006. "A cyber forensics ontology: analysis and reuse of digital forensic Creating a new approach to studying cyber knowledge." digital investigation 6: S23- forensics." digital investigation 3:37-43. S33. Carrier, Brian. 2003. "Defining digital forensic Karie, Nickson M, and Hein S Venter. 2014. examination and analysis tools using "Toward a general ontology for digital abstraction layers." International Journal forensic disciplines." Journal of forensic of digital evidence 1 (4):1-12. sciences 59 (5):1231-1241. Casey, Eoghan, Greg Back, and Sean Barnum. Narock, Tom, and Peter Fox. 2015. The 2015. "Leveraging CybOX™ to standardize Semantic Web in Earth and Space Science. representation and exchange of digital Current Status and Future Directions. Vol. forensic information." Digital Investigation 20: IOS Press. 12: S102-Sl10. Park, Heum, SunHo Cho, and Hyuk-Chul Chan, E. 2011. "A Framework for live Kwon. 2009. "Cyber forensics ontology for forensics." Philosophy in Computer cyber criminal investigation." In Forensics Science 19 (4):110-119. in Telecommunications, Information and Multimedia, 160-165. Springer. Cosic, Jasmin, and Zoran Cosic. 2012. "The necessity of developing a digital evidence Reith, Mark, Clint Carr, and Gregg Gunsch. ontology." the proceedings of the Central 2002. "An examination of digital forensic European Conference on Information and models." International Journal of Digital Intelligent Systems. Evidence 1 (3):1-12. Giova, Giuliano. 2011. "Improving chain of Schatz, Bradley, George Mohay, and Andrew custody m forensic investigation of Clark. 2004. "Rich event representation for

@ 2018 ADFSL Page 37 JDFSL V13N3 Ontologies and the Semantic Web for Digital ...

computer forensics'." Proceedings of the Fifth Asia-Pacific Industrial Engineering and Management Systems Conference (APIEMS 2004). Simon, T. 2012. "Discussion on the Challenges and Opportunities of Cloud Forensics." Multidisciplinary Research and Practice for Information Systems 9 (1):116-223. Slay, Jill, and Fiona Schulz. 2014. "Development of an ontology based forensic search mechanism: Proof of concept." arXiv preprint arXiv:1407.8258.

Page 38 @ 2018 ADFSL Ontologies and the Semantic Web for Digital ... JDFSL V13N3

APPENDIX

Us erlnt erface 5 oftwareType

/ / / / .if / / / /

I '+) Desktop Mobile

Figure 1 Illustrated relationships among classes in the ontology

@ 2018 ADFSL Page 39 JDFSL V13N3 Ontologies and the Semantic Web for Digital ...

Types ij Objeclproperlymertions ij ♦ Port_Scan f Feature ■ hasS i milarFeatu r e Registry_hive_carving ♦ Rainbow _tables_fo r_passwo rd_ cracking 0108 ♦ Reads_deleted_messages_lrom_the_SIM_card ♦ Recover_backups Samelndividuali. O Dalaproperlyamrtion, O registry_ analyzer

♦ registry_ archive Differenllndividual, O Negaliveobjeclproperlya•ertion, O ♦ Registry_hive_carving ♦ Registry_rebui lding Negativedataproperlyaoertions O ♦ registry_restore ♦ Report_ editor ♦ Restore_ files ♦ Resurrection_ of_ Windows_ Registries _long_since _tor Seamless_ access _to_ all_instances _of_ keys_ and_ val ♦ Figure 2 Results without reasoning activated

ICguq DL6AJ6MDJCjnL61 j&8!JIA&q111b1ob&ij,\ms41ou1 O -gccs1no-g11-!u11gum-of ~GA1-guq-,1g l JOU-OfMJUqOM1-KOOJ1jLJ61 )U0-1 JUC6-!0L j68!jlA60pl6CjblOb,ij,\!U6~0U1 O ]161 j~OL l61jOL6 0111b1ob&ij,\1m41ou1 O LGpnJlqJUO P!A6-C9LAJUO 1 µ9221 w11 9ll:69(flL6 LGa1a(!A-LGaroL6 ncpJAG oc I µ9 221 Wll 9ll:69(nl6 ~6a1a(lii-L6pn11q1ua oc pgc~nb1 1 µ9221 w11 9ll:69(flL6 LGa1a(!A-9LcµL1 6 0€ :161Gq-W611906nLOW-jp6-2JH-C9Lq 1 µ92 21w 11 9ll:69(flL6 LGa1a(!A-9u9 VUGL 'jgp1s1-10LM11MoLq-cLgc~1uo oc 0808 ■ p912J WJl9 L~691 n LG KOO J11LA-pJA6-C9V.JU O 000G OP!&c1b1ob&ij,\!n&~ou1 Figure 3 Results with reasoning activated

Page 40 @ 2018 ADFSL Ontologies and the Semantic Web for Digital ... JDFSL V13N3

I ❖

♦ re~stry_restor

Figure 4 Expanded illustration of relationships in instances of Feature

Home System Admin Database XML Web Services Linked Data NNTP

Enterprise Enterprise Web Data Information Services Management Platform V.11JOn 07.20 .3217 Build •Apr 2!520 HI

Business Process

Figure 5 Virtuoso Conductor Home Screen

@ 2018 ADFSL Page 41 JDFSL V13N3 Ontologies and the Semantic Web for Digital ...

Home Database Replication Web Application Server XML Web Services Linked Data

Sponger Graphs Schemas Namespaces Views Quad Store Upload ad Sto e load

® Fil e" I Choose Fil e ID FProp.ow l 0 Resource URL" D Create graph expli citly Named Graph IRI" lhtt p:l/loca lhost: 8890/DAV

Figure 6 Uoloading New Linked Data from OWL File

Interactive SQ L (ISQL) Database Replication Web Application Server XML Web Services Linked Data NNTP 1 Graphs Schemas Namespaces Views Quad Store Upload QL E ecu o Documentation (\,-eb) Tutoria ls (,,,,.b} Que ry Saved Que rie s

_ Virtuoso We b S ite Default Graph IRI _ Openlink Software Query PREFIX r df: We rs10 n: 07.20.32 17 PREFIX owl : B u,ld : Apr 2520 1eJ PREFIX r df s : PREFIX xsd : SELEC T ?s ubject ?obj e c t 1✓ HER E { ?s ub jec t r df s : s ubClassOf ?object }

/,

Figure 7 Issuing a SP ARQL Query in the Virtuoso web interface

Page 42 @ 2018 ADFSL Ontologies and the Semantic Web for Digital ... JDFSL V13N3

., Twinkle: SPARQL Tools

--Fil e Ed it Query Select Query Task @ • Untitled ~ @~ l!] save t> Run O Cancel -3: General Base URI Ihttp : /{www.semanticweb.org/hwimmer /ontologies/df // [i Write Simple Query Data URL Ihttp :/ flocalhost: 8890/DF ~ I ~ PREFIX rdf : E:l In Memory ® PREFIX owl : PREFIX r d f3 : Periodic Table PREFIX x .sd : Planet RDF Feed & Blogroll SE L.ECT ?subject ?ob ject WHERE { ?s ubject rdf3 ; 3ubCl a33Qf ?object } fj Inferencing ®

Planet Feed (RDFS)

Persistent Stores ® 1~ subject object http :/{www.semanticweb.org/hwimmer /ontologies/df:Software -6245bc7c: 156c25 50244:-7fa5 ~ Remote Services @ http: /{www.semanticweb.org/hwimmer /ontologies/df #Software -6245bc7c: 156c25 50244:-7fa6 http :/{www.semanticweb.org/hwimmer /ontologies/df#Mobile http :/{www.semanticweb .org/hwimmer /ontologies/df:Software DBpedia.org http: /{www.semanticweb.org/hwimmer /ontologies/df#Desktop nttp :/{www.semanticweb .org/hwimmer/ ontologies/df:Software GovTrac:k.us Reyvu.com

Figure 8 Twinkle interface and SP ARQL query execution

Select a Feature Software that supports selected Feature(s) Ire gistry_a nalyzer Registry_h ive_carv ing

Suggested/ Related Fea:ure registry_a nalyzer registry_arc hive registry_reb uilding registry _restore

Figure 9 Prototype GUI for Digital Investigator Tool Selection

@ 2018 ADFSL P age 43 JDFSL V13N3 Ontologies and the Semantic Web for Digital ...

public stat i c voi d main (String [] args ) throws Excepti on {

DF dfMo del = new DF (); //Create Basic Knowledge Model dfMo del .creat eDFModel ();

//Populate with your DF data (local file) dfMo del .readDFOWLfromFile ();

dfMo del .getQuery();

// Close the model dfMo del . close () ;

private voi d creat eDFMo del () { _dfModel = Mo delFactor y.creat eOntol ogyModel (OntModelSpec . OWL_MEM_RULE_I NF );

Figure 10 Main Method and Creation of the Ontology Model with Reasoning Activated

p riv a te voi d read DFOWLfr o mF ile () { try { System .. o ut .. p r i ntl n ( "readBCOWLfromFile" ) ; I nputStream meF ile = F ileMa.na g er.. g e t () . ope n ( "ont/df728_wimmer.owl" ); _ d :fMod el .. read (me F ile , d e f a u l tNameSpa c e ) ;

me F ile . c l o se () ; } catch ( I OExce pti on i o ) { Sys t em . o u t . p rintl n ( "File Error: " + i o . g e t Me s s a g e ()); } Sys t e m . o ut . p rintl n ( "read is done" ); }

Figure 11 Reading OWL Ontology into Jena Framework

Page 44 @ 2018 ADFSL Ontologies and the Semantic Web for Digital ... JDFSL V13N3

private void getQuery() I String queryString = "PREFIX rdf: " + "PREFIX owl: " + "PREFIX rdfs: " + "PREFIX xsd: " + "PREFIX df: " + "SELECT ?feature WHERE { " + "df:registry_analyzer df:hasSimilarFeature ?feature .}" ;

Query query = QueryFactory.create(querySt ring ) ; QueryExecuti on qexec = QueryExecut ionFactory.create(query, _dfMo del);

Resul tSet myData = qexec.execSelect () ;

Figure 12 Execution of a SP ARQL Query

( ?fea ure = ) in while ( ?fea ure = ) in while ( ?fea ure = ) in while ( ?fea ure =)

Figure 13 Results from Query with Reasoner Activated

@ 2018 ADFSL Page 45 JDFSL V13N3 Ontologies and the Semantic Web for Digital ...

Page 46 @ 2018 ADFSL