Posts

Showing posts from December, 2017

Attacking wireless networks

Image
This post will be discussing the process by which a Client authenticates to a wireless network, and a common attack that is used to gain un-authorised access to wireless networks. There will be acronyms abound! When a Client joins a wireless network, it does so by means of a 4-way handshake designed to prove knowledge of the correct password (key) for that network. The key itself is "Pre-Shared", meaning both the Client and the Access Point have knowledge of the key prior to the handshake. The password, referred to as a 'Pre-Shared Key (PSK)', is never transmitted during the communication between the Client and the Access Point (AP). So, how then, does one obtain the password to such a network? Before obtaining the password it is first necessary to understand the measures taken to protect it. The Client and Access Point have knowledge of the Pre-Shared Key prior to the 4-way handshake. To be more specific - the Access Point is configured with the Pre-Sha

Creating TCP streams with Python's socket module

Image
Python's socket module is part of the Python standard library, making it available for use in any Python script. I should note that this post will be referring to version 3 of Python. Before discussing any of the code for creating a socket with Python, it is first necessary to understand what a socket is and how sockets are used. Sockets are fundamental to communications between endpoints in a TCP/IP network. They are constantly being established and closed each time a new communications stream starts or ends between two endpoints. Using the example of a client requesting a web page from a web server, each of the endpoints would maintain the following socket information: Local IP address Remote IP address Local port Remote port Transport protocol A socket can therefore be thought of as a collection of information (IP addresses, port numbers and transport protocols) which is required for one endpoint to communicate with another endpoint on a TCP/IP network with each end