1 00:00:00,440 --> 00:00:06,800 To attack network protocols, you need to understand the basics of computer networking. 2 00:00:06,830 --> 00:00:11,720 The more you understand how common networks are built and function, the easier it will be applied to 3 00:00:11,720 --> 00:00:15,980 the knowledge to capturing, analyzing and exploiting new protocols. 4 00:00:16,010 --> 00:00:23,120 Through this section, I will introduce the basic network concepts and and that you will encounter every 5 00:00:23,120 --> 00:00:25,510 day when you are analyzing network protocols. 6 00:00:25,520 --> 00:00:30,830 I will also lay the groundwork for a way to think about the network protocols, making it easier to 7 00:00:30,830 --> 00:00:34,870 find previously unknown security uses during your analysis. 8 00:00:34,880 --> 00:00:40,760 So let's get started with by the network architecture and protocols here. 9 00:00:41,030 --> 00:00:42,020 Network. 10 00:00:48,150 --> 00:00:51,300 This is our topic here that you will learn about. 11 00:00:51,450 --> 00:00:58,050 So let's start by reviewing some basic networking terminology and asking the fundamental question What 12 00:00:58,050 --> 00:00:59,130 is a network? 13 00:00:59,130 --> 00:01:06,450 So the network is a set of two or more computers connected together to share information, and it's 14 00:01:06,450 --> 00:01:10,650 a common to refer to each connected device as a node. 15 00:01:10,680 --> 00:01:15,720 Here, as you can see here, workstation node, mainframe node, server node. 16 00:01:15,720 --> 00:01:17,640 And this is our network here. 17 00:01:18,720 --> 00:01:25,620 So the so it's common to refer to each connected device as a node on the network to make the description 18 00:01:25,620 --> 00:01:28,810 applicable to a wide range of devices. 19 00:01:28,830 --> 00:01:33,000 Here you are seeing a very simple example of our nodes here. 20 00:01:33,000 --> 00:01:40,170 So this diagram shows three nodes connected with a common network and each node might have a different 21 00:01:40,170 --> 00:01:41,760 operating system or hardware. 22 00:01:41,760 --> 00:01:50,280 But as long as each node follows a set of rules or a network protocols, it can communicate with other 23 00:01:50,280 --> 00:01:51,210 nodes on the network. 24 00:01:51,210 --> 00:01:58,970 So to communicate correctly, all the nodes on a network must understand the same network protocols. 25 00:01:58,980 --> 00:01:59,490 Here. 26 00:01:59,490 --> 00:02:01,740 Let's actually, I just. 27 00:02:03,130 --> 00:02:03,850 Here. 28 00:02:04,930 --> 00:02:14,200 So and this is the functions and the what the network protocols serves in our network here. 29 00:02:14,200 --> 00:02:21,940 So, uh, the network protocols serves many functions, including one of these functions here. 30 00:02:21,940 --> 00:02:27,070 So this is the maintaining state session state. 31 00:02:27,070 --> 00:02:33,580 So this protocols typically implement mechanisms to create a new connections and terminate existing 32 00:02:33,580 --> 00:02:34,420 connections. 33 00:02:34,420 --> 00:02:42,310 Here we, uh, this protocol also does identifying nodes through addressing here. 34 00:02:42,310 --> 00:02:45,970 So data must be transmitted to correct node on a network. 35 00:02:45,970 --> 00:02:52,300 So some protocols implement an addressing mechanism to identify specific nodes or groups of nodes. 36 00:02:52,300 --> 00:02:55,420 And we are also going to control the flow. 37 00:02:55,420 --> 00:02:56,500 So controlling flow. 38 00:02:56,500 --> 00:03:01,570 So this is the amount of data transferred across a network is limited, of course, So the protocols 39 00:03:01,570 --> 00:03:08,990 can implement ways of managing data flow to increase throughput and reduce latency. 40 00:03:09,820 --> 00:03:14,910 And we are also going to be guaranteeing the order of transmitted data. 41 00:03:14,920 --> 00:03:21,880 So many networks do not guarantee that the order in which the data is sent will match the order in which 42 00:03:21,880 --> 00:03:30,790 it is received, and the protocol can reorder the data to ensure it's delivered in the correct order. 43 00:03:30,790 --> 00:03:35,800 And we are also going to detecting and correcting errors here. 44 00:03:35,890 --> 00:03:36,730 So. 45 00:03:37,550 --> 00:03:42,080 Um, the many networks are not 100% reliable, right? 46 00:03:42,080 --> 00:03:50,690 So data can become corrupted and it's important to detect the corruption and ideally correct it. 47 00:03:50,810 --> 00:03:59,150 And here lastly, uh, formatting and encoding data and the data isn't always in a format suitable for 48 00:03:59,150 --> 00:04:00,440 transmitting on a network. 49 00:04:00,440 --> 00:04:10,400 And a protocol can specify ways of encoding data such as encoding English text into binary values.