25.12.2014 Views

Analysis and Evaluation of the Windows Event Log - Bill Buchanan

Analysis and Evaluation of the Windows Event Log - Bill Buchanan

Analysis and Evaluation of the Windows Event Log - Bill Buchanan

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Barrie Codona, BSc (Hons) Network Computing, 2007<br />

application will also provide <strong>the</strong> ability to search through all <strong>the</strong> events looking or any<br />

that fail <strong>the</strong> checksum check.<br />

4.6 Pseudo Code<br />

Pseudo code is used in s<strong>of</strong>tware development to give a description in a readable form<br />

<strong>of</strong> <strong>the</strong> basic functions <strong>of</strong> a program. The purpose <strong>of</strong> this is to make it more readable<br />

for humans, so <strong>the</strong>y can underst<strong>and</strong> what <strong>the</strong> program is doing, without<br />

overcomplicating <strong>the</strong> code <strong>and</strong> introducing complex algorithms.<br />

4.6.1 Client Side Pseudo Code<br />

Figure 13 is <strong>the</strong> pseudo code that <strong>the</strong> client application will use. As it can be seen <strong>the</strong><br />

client attempts to connect to <strong>the</strong> Data Archiving System using port 13000. This port<br />

has been selected as it outside <strong>of</strong> <strong>the</strong> range <strong>of</strong> commonly used ports. After <strong>the</strong><br />

connection has been established <strong>the</strong> client receives <strong>the</strong> public key from <strong>the</strong> Data<br />

Archiving System. This key is <strong>the</strong>n used to encrypt all <strong>the</strong> data that is sent to <strong>the</strong> Data<br />

Archiving System.<br />

Prompt user to enter a key for use with HMAC<br />

Connect to <strong>the</strong> server on port 13000<br />

Receive public key from server<br />

Do Continuously<br />

{<br />

Monitor for files being ‘modified’<br />

If a file is ‘modified’<br />

{<br />

Get system time<br />

Get username<br />

Get event type (changed/created/deleted/renamed)<br />

Get path <strong>of</strong> file<br />

Generate XML string<br />

Generate HMAC checksum<br />

Add HMAC to XML String<br />

Encrypt with Servers public key<br />

Send to Server<br />

}<br />

}<br />

Figure 13: Client side pseudo code<br />

4.6.2 Data Archiving System Pseudo Code<br />

36

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!