This is the next part of the 5 questions that one of which took about a week to do and I still feel like I should go back over the authentication portion of the AES modes but ill get to that. I mean, it was basically a post on one topic which I haven’t really done since my 2012 MCSA and I enjoyed it. It took along time but I had fun. Which I suppose its more fun to act like a weird teenager than study? Am I, the weird one here? Not sure. So here we go,
So at this point, not a lot of questions for me on this because SHA is basically good for almost everything but I’m not real sure on what the hell RC4 is or why HMAC is bad for TLS certificates and I would like to know. I would also like to know what version of SHA works with this. Yes, I realize I’m drilling down at this point but to be honest, I would really like to pass this test and beyond that I think learning is fun and it seems to provide for some manor of social security in the form of being employable.
Now moving on to HMAC and while looking for info I came across this OWASP doc about TLS that looks really handy Overview of TLS v1.3
Anyway, back to TLS, x.509 certs and HMAC/SHA. Now, it looks like this doesn’t apply to TLS 1.3 but 1.2 and older does use HMAC-SHA for data integrity and that’s basically the only info I can find. the Data Integrity grab is from the wiki on TLS and the other one on validataing an intermdeiate certificate (different from data validation, I think?) is from the X.509 Certificate wiki
Either way, encryption and hashing is a weird thing and I get that SHA is the answer even though there are not very clearly defined parameters as to why.
This seems tricky because you think a certificate has to be signed by a public CA so you want to pick that and when looking around I’m not finding any info on other types of certificates that public CAs offer. For example, poking around the GlobalSign website, I find no info on anything and it would appear they are all X.509. Its also worth noting that an X.509 certificate is checked when accepted by the end users browser by the public signing authority so a private CRL isn’t necessary. This is different from Kerberos in that you have to have an internal KDC to validate authentication. Honestly, I should get more into understanding token generation and so forth in Kerberos for me to fully understand that but its mentioned on the wiki for CRL. So the answers wording is a little tricky but haha at the end of the day an x.509 cert and TLS is the most modern security for info exchange that a website can offer.
This one, I’m obviously completely unclear on but lets give it a go as to explaining this. This isnt AES or TLS but rather internal validation when connecting to a WAP.
Lets start with the basics this is an IAS server, better read up on that, ok so its a Windows Server configured as an NPS server with Radius on it. The thing that gets confusing here is that the correct answer is always the last one for some reason. Like I think EAP and PEAP are set up on the NPS are the MSCHAP is set up on the WAP. This answer is actually very clear and in a document on MSFT DOCs. Deploy Password-Based 802.1X Authenticated Wireless Access
EAP, PEAP, and PEAP-MS-CHAP v2
Extensible Authentication Protocol (EAP) extends Point-to-Point Protocol (PPP) by allowing additional authentication methods that use credential and information exchanges of arbitrary lengths. With EAP authentication, both the network access client and the authenticator (such as the NPS) must support the same EAP type for successful authentication to occur. Windows Server 2016 includes an EAP infrastructure, supports two EAP types, and the ability to pass EAP messages to NPSs. By using EAP, you can support additional authentication schemes, known as EAP types. The EAP types that are supported by Windows Server 2016 are:
Transport Layer Security (TLS)
Microsoft Challenge Handshake Authentication Protocol version 2 (MS-CHAP v2)
Important
Strong EAP types (such as those that are based on certificates) offer better security against brute-force attacks, dictionary attacks, and password guessing attacks than password-based authentication protocols (such as CHAP or MS-CHAP version 1).
Protected EAP (PEAP) uses TLS to create an encrypted channel between an authenticating PEAP client, such as a wireless computer, and a PEAP authenticator, such as an NPS or other RADIUS servers. PEAP does not specify an authentication method, but it provides additional security for other EAP authentication protocols (such as EAP-MS-CHAP v2) that can operate through the TLS encrypted channel provided by PEAP. PEAP is used as an authentication method for access clients that are connecting to your organization’s network through the following types of network access servers (NASs):
802.1X-capable wireless access points
802.1X-capable authenticating switches
Computers running Windows Server 2016 and the Remote Access Service (RAS) that are configured as virtual private network (VPN) servers, DirectAccess Servers, or both
Computers running Windows Server 2016 and Remote Desktop Services
PEAP-MS-CHAP v2 is easier to deploy than EAP-TLS because user authentication is performed by using password-based credentials (user name and password), instead of certificates or smart cards. Only NPS or other RADIUS servers are required to have a certificate. The NPS certificate is used by the NPS during the authentication process to prove its identity to PEAP clients.
This guide provides instructions to configure your wireless clients and your NPS(s) to use PEAP-MS-CHAP v2 for 802.1X authenticated access.
So anyway, you you have to put MS-CHAP on the access point and the back end framework of EAP-PEAP handles the rest.
All right, well I think thats all for tonight. Wait, no theres one more.
My first thought when I look at my answer is that EPA-TLS doesn’t really make any sense. Lie I’m not sure that’s a real thing. Like it seems like more stuff should be involved that simply EAP rolled into TLS, which should use an x.509 certificate and how are you verifying that? Anyway, there’s a MSFT article Certificate requirements when you use EAP-TLS or PEAP with EAP-TLS and it looks like the kicker is with TLS the certificate is stored locally on the machine and with EAP-PEAP that they are calling PEAP, its on the server and tied to an AD account.
Ok, so that really is all for the night. I learned a lot and I feel like I’m finally making headway on this stuff and learning information that I can use to answer questions that are not covered on this pretest and I have a feeling that will be most of the questions on the actual test. Now lets hope I hear something positive back from that interview because things are kind of crazy with my current employer due to virus concerns. Great time to be looking for a job with the economy tanked but I’m sure I’ll be ok either way. If not good old nihilism kicks in.
Well, I started back through the questions that I missed the first time around and I can tell you I have for sure learned a ton. I’m able to explain concepts that I wasn’t able to before and rationally provide answers rather that give a letter answer because I memorized that as being the answer. So that’s good. I got through 50 questions and realized that there where about 5 that I wanted to blog and legit got about 3 wrong. So far so good. However, if I remember correctly the last half of the 250 that I missed where much harder. I’m going to kind of take my time with it but I’m hoping to get through that set and find out I’m some where in the 90s on the questions I missed the first time. You know, its like a check and re check and the recalibrate and so forth. I mean, 300 bucks is a lot of money to waste if you are not sure about some thing. At least for me. I also have an interview tomorrow. I dont expect it to go very far however I’m super excited that recruiters have started to contact me out of the blue for network admin type roles. Also, its worth noting that this started as several questions and then ended up being so much info about AES thats longer than a typical 5 question post that I cut it down to one post. If your new, prepare for shoe shine head
I got this right and I understand what AES is but I’m not sure that some of these are AES modes and I wanted to take a look at this. HMAC ‘just made sense’ but I couldn’t explain it back to my self. I didn’t like that so lets star at the top
Before you close the package and mail it, you make a copy of the photograph. No locked box this time, instead you brush over the copy with a concoction of liquid chemicals. Only you know the recipe (key) for this mixture, and anytime you brush over a copy, you use the exact same brush strokes. The mixture will swirl and blur the copy of the photograph into something resembling modern art; let’s call it an HMAC. You’re not exactly sure what it will look like after it dries, but you know that if you brush any two identical photos with the same recipe and the same brush strokes, the resulting HMACs will look the same. So you place the dried HMAC into the package along with the original photograph and send it off to Sarah. When you get the package back from Sarah, it contains what you hope is the un-altered original photograph along with what you expect is the HMAC you created and included with it. Take the photograph out of the package, copy it, and create another HMAC with that copy (apply your mixture/brush strokes). Compare the HMAC you just created with the HMAC that came back in the package. If they are identical, then you can be sure Sarah and the mail carriers did not alter the photograph. If Sarah had altered the photo, then the HMACs will not be identical. If Sarah had altered the HMAC, then the HMACs will not be identical. If Sarah had altered the photo, and tried to create a new HMAC, then the HMACs will not be identical (she doesn’t know your recipe). Thus you know if the photo (data) is authentic or not, which is exactly what HMACs are used for.
Basically, HMAC insures message validity. However, I still don’t understand how AES or how it interacts with other ‘modes’ so I have to figure that out. Also, it appears the key length for HMAC is 256 but as to how the data validation works as you move into harder to read stuff that seems to indicate they are using SHA256 for data validation with AES and that is a little confusing as HMAC seems to do data validation on its own.
There are tons of sites on this and I kind of had to look at, all of them I could find, to really kind of wrap my brain around this and I’ll go through each one of these. The thing is, none of them mention HMAC but AES is basically a framework that you actually use your algorithm with and I get that. I’m not sure how you inject the algorithm into the framework but personally I’m hoping you select it through a gui. This is one of the tricker parts of this exam, its mostly theoretical. Which is still cool. The other interesting note here is that AES has varying key lengths and I suppose we should figure that out. In addition its worth noting that H stands for hash and you can use MAC without that. The main 5 modes are really complicated to slim down and at the end Ill try to put a summary but this is one of the biggest single points of information that I have found while studying for pretty much anything in computers. I’m actually going to have to look at this and edit it to make sure that I made the points I wanted to clearly haha. That never happens! There is a thing I found on stack exchange that I found a helpful overview but it does not answer all the questions that could possibly come up on test. That said its a helpful starting point. Here is the link and prevalent information: How to choose an AES encryption mode (CBC ECB CTR OCB CFB)?
ECB should not be used if encrypting more than one block of data with the same key.
CBC, OFB and CFB are similar, however OFB/CFB is better because you only need encryption and not decryption, which can save code space.
CTR is used if you want good parallelization (ie. speed), instead of CBC/OFB/CFB.
XTS mode is the most common if you are encoding a random accessible data (like a hard disk or RAM).
OCB is by far the best mode, as it allows encryption and authentication in a single pass. However there are patents on it in USA.
There is more really good info on this about authentication methods too, which is contained in another comment. I’m going to share the the entire comment because its great! It is kind of a nightmare for formatting even though, for the first time ever, I clicked the ‘view source’ on a page and copied the HTML over. Have to check and see how wordpress likes it. Took some edits but it looks like its working, the italics note the start and end of the comment and for some reason the guy actually used a bold font and the start of the comments in ordered lists. Looks great, may do that in future posts. I try to use those to notate lifted information as much as possible and if you see me copying text and not doing that, please send an email and I will make the change.
Comparison of the modes
Encryption only:
Modes that require padding: Like in the example, padding can generally be dangerous because it opens up the possibility of padding oracle attacks. The easiest defense is to authenticate every message before decryption. See below.
ECB encrypts each block of data independently and the same plaintext block will result in the same ciphertext block. Take a look at the ECB encrypted Tux image on the ECB Wikipedia page to see why this is a serious problem. I don’t know of any use case where ECB would be acceptable.
CBC has an IV and thus needs randomness every time a message is encrypted, changing a part of the message requires re-encrypting everything after the change, transmission errors in one ciphertext block completely destroy the plaintext and change the decryption of the next block, decryption can be parallelized / encryption can’t, the plaintext is malleable to a certain degree – this can be a problem.
Stream cipher modes: These modes generate a pseudo random stream of data that may or may not depend the plaintext. Similarly to stream ciphers generally, the generated pseudo random stream is XORed with the plaintext to generate the ciphertext. As you can use as many bits of the random stream as you like you don’t need padding at all. Disadvantage of this simplicity is that the encryption is completely malleable, meaning that the decryption can be changed by an attacker in any way he likes as for a plaintext p1, a ciphertext c1 and a pseudo random stream r and attacker can choose a difference d such that the decryption of a ciphertext c2=c1?d is p2 = p1?d, as p2 = c2?r = (c1 ? d) ? r = d ? (c1 ? r). Also the same pseudo random stream must never be used twice as for two ciphertexts c1=p1?r and c2=p2?r, an attacker can compute the xor of the two plaintexts as c1?c2=p1?r?p2?r=p1?p2. That also means that changing the message requires complete reencryption, if the original message could have been obtained by an attacker. All of the following steam cipher modes only need the encryption operation of the block cipher, so depending on the cipher this might save some (silicon or machine code) space in extremely constricted environments.
CTR is simple, it creates a pseudo random stream that is independent of the plaintext, different pseudo random streams are obtained by counting up from different nonces/IVs which are multiplied by a maximum message length so that overlap is prevented, using nonces message encryption is possible without per message randomness, decryption and encryption are completed parallelizable, transmission errors only effect the wrong bits and nothing more
OFB also creates a pseudo random stream independent of the plaintext, different pseudo random streams are obtained by starting with a different nonce or random IV for every message, neither encryption nor decryption is parallelizable, as with CTR using nonces message encryption is possible without per message randomness, as with CTR transmission errors only effect the wrong bits and nothing more
CFB‘s pseudo random stream depends on the plaintext, a different nonce or random IV is needed for every message, like with CTR and OFB using nonces message encryption is possible without per message randomness, decryption is parallelizable / encryption is not, transmission errors completely destroy the following block, but only effect the wrong bits in the current block
Disk encryption modes: These modes are specialized to encrypt data below the file system abstraction. For efficiency reasons changing some data on the disc must only require the rewrite of at most one disc block (512 bytes or 4kib). They are out of scope of this answer as they have vastly different usage scenarios than the other. Don’t use them for anything except block level disc encryption. Some members: XEX, XTS, LRW.
Authenticated encryption:
To prevent padding oracle attacks and changes to the ciphertext, one can compute a message authentication code (MAC) on the ciphertext and only decrypt it if it has not been tampered with. This is called encrypt-then-mac and should be preferred to any other order. Except for very few use cases authenticity is as important as confidentiality (the latter of which is the aim of encryption). Authenticated encryption schemes (with associated data (AEAD)) combine the two part process of encryption and authentication into one block cipher mode that also produces an authentication tag in the process. In most cases this results in speed improvement.
CCM is a simple combination of CTR mode and a CBC-MAC. Using two block cipher encryptions per block it is very slow.
OCB is faster but encumbered by patents. For free (as in freedom) or non-military software the patent holder has granted a free license, though.
GCM is a very fast but arguably complex combination of CTR mode and GHASH, a MAC over the Galois field with 2^128 elements. Its wide use in important network standards like TLS 1.2 is reflected by a special instruction Intel has introduced to speed up the calculation of GHASH.
Recommendation:
Considering the importance of authentication I would recommend the following two block cipher modes for most use cases (except for disk encryption purposes): If the data is authenticated by an asymmetric signature use CBC, otherwise use GCM.
Anyway, I found this site to be the most helpful for an overall understanding so moving into key lengths may be getting ahead of our selves but there is so much to know about this that its as good of place as any to start.The difference in five modes in the AES encryption algorithm its also where I got the images from. So lets get into this and hopefully I’ll come out the other side of this having learned a few things.
This first one is (shockingly, HMAC isn’t discussed but it is clear that its possible to use in the AES framework) (directly copied text): ECB Mode- The ECB (Electronic Code Book) mode is the simplest of all. Due to obvious weaknesses, it is generally not recommended. A block scheme of this mode is presented in Fig. 1.
So they don’t really discuss the variables for these charts but I think we can make some assumptions that for some reason they decided to use ‘k’ as a variable for the actual encryption while P is the data being encrypted and C is the encrypted text. I’m not really sure if it actually breaks it into segments and then balls it up or how that works but I get the idea that its basic.
Here are some more lifted ideas about ECB: For example, if a ciphertext from the ECB mode is known to encrypt a salary figure, then a small number of trials will allow an attacker to recover the figure.
In general, we do not wish to use a deterministic cipher, and hence the ECB mode should not be used in most applications. In the database encryption, we can use ECB to encrypt the tables, indexes, wal, temp files, and system catalogs. But with the issues of security, we don’t suggest to use this mode.
As you can see “don’t use this is a running theme” while no one talks about HMAC. This is from a PDF that I will hopefully attach to this blog but if not you can find it here: MODES OF OPERATION OF THE AES ALGORITHM
ECB Mode of Operation The ECB (Electronic Code Book) mode of operation is the simplest of all. A block scheme of this mode is presented in Fig. 1. As it can be seen from Fig. 1, the plaintext message is divided in blocks (P1, P2, PN), where each block is encrypted separately with the same key (K). The results of the encryption are the encrypted messages C1, C2 and CN respectively. If the size of the message is larger than n blocks, the last block is filled with padding. In this mode, if an error occurs in one of the blocks, it is not propagated to the other blocks, which is why decryption is possible in the blocks that don’t contain an error [2, 6, 7]. According to [6], the encryption in this mode is deterministic, because identical P blocks will produce identical C blocks, which is why identical plaintext blocks or a message with the same beginning are easily recognizable. Also, the ordering of the C blocks can be changed without the receiver noticing. In general, this mode is not recommended for encryption of data that is larger than one block [2, 8]. In [3] it is strictly recommended not to use this mode at all, while [7] states that this mode of operation is wrong and abandoned.
Apparently the end results do come out ‘packaged’ some how and the packets can be moved around if they are the exact same block of text because the outputs all look the same which causes issues with data validation. Not spending much more time on this one. However, another note from the article mentioned in the intro paragraph is that ECB is 128 bit key length, if I’m understanding this right:
Remember to never choose this mode unless you only encrypt data smaller than 128 bit. Unfortunately it is still often misused because it does not require you to provide an initial vector (more about that later) and therefore seems to be easier to handle for a developer.
Anyway, lets move on to the next type of AES encryption mentioned in the first article, CBC mode
This one is a little more complicated and we have XOR data involved and I’m not really sure what that is, so lets investigate. After going through several websites I realized that I understand this at all and went to YouTube. I found this super helpful video that honestly I wouldn’t have found helpful if I didn’t have a baseline understanding of AES.
So now I sort of understand the XOR data, it kind of jumbles the info before it encrypts and then unencrypts the data, spins it and then it should be back. Clearly, you end up with more keys this way. In addition, here is what the PDF has to say about the mode:
In order to provide cryptographic security, every encryption of the same plaintext should result with a different ciphertext [6]. The CBC (Cipher Block Chaining) mode of operation (Fig. 2) provides this by using an initialization vector – IV [4]. The IV has the same size as the block that is encrypted. Fig. 2 presents the encryption process. First, an XOR operation is applied to the plaintext block (P1) with the IV, and then an encryption with the key (K) is performed. Then, the results of the encryption performed on each block (C1, C2, … , CN-1) is used in an XOR operation of the next plaintext block PN which results in CN. In this way, when identical plaintext blocks are encrypted, a different result is obtained. Also, using a different IV for each new encryption, an identical message will always be encrypted differently. It should be emphasized that the same key K is used in each of the encryption blocks. Figure 2: Scheme of the CBC mode of operation [2] An error in one of the plaintext block will propagate in all the following blocks and will be manifested in the process of the description [8]. Specifications in [8] recommend that the Padding method 2 is used in case padding is needed with the CBC mode of operation because it provides protection from some of the known PA (Padding Attacks). There are complex CBC attacks for which an unpredictable value of IV is needed in order to overcome them [2, 6]. In [7] it is emphasized that the CBC mode of operation is safe from CPA (Chosen Plaintext Attack) attacks (attacks in which the attacker chooses a set of plaintexts and is able to obtain respective ciphertexts) only if the IV has a random value, but not if the IV is a nonce (a number that is not repeated). The CBC mode of operation, besides its vulnerability to PA attacks, is also easily susceptible to CCA (Chosen Ciphertext Attack) attacks (where the attacker chooses a set of ciphertexts and is able to obtain respective plaintexts). According to [3], the encryption key has to be changed whenever condition (1) holds: ( 1) / 2 2 + << n q (1) In (1), q is the number of blocks that should be encrypted and n is the number of bits in the encryption blocks. In order to provide protection from CCA attacks in this mode of operation, it is necessary to use ÀÅ (Authenticated Encryption), where, besides the encryption, authentication is also performed [3].
I’m starting to get this one but I don’t know what the key length is which could come up on a test. There is also a basic overview of this one on TechTarget: cipher block chaining (CBC). This also gives us no information but I think its 128 bit based on this information:
If the key and iv are generated with another tool, you must verify that the result is hex-encoded and that the size of the key for 128 is 32 characters, 192 is 48 characters, and 256 is 64 characters. The hex-encoded iv is 32 characters in length. Hex encoding means that each character in the key and iv are converted to its hexadecimal equivalent. For example, the letter “A” is “41” in hexadecimal. Hex encoding eases the storage and transport of the key and iv because the non-encoded versions of these items can contain ASCII control character sequences.
After further research it looks like CBC can use 128 or 192 or 256, finally an answer in the form of a tool lol AES CBC encryptor
Now that we have covered a ton of basics that maybe we wont have to hit in the next mode, lets move on to CFB
This one looks similar but the data is actually being encrypted and then rotated before spitting out the final cypher. Similar but more complex. I’m going back to the basic link for some info on this:
First, CFB will encrypt the IV, then it will xor with plaintext block to get ciphertext. Then we will encrypt the encryption result to xor the plaintext. Because this mode will not encrypt plaintext directly, it just uses the ciphertext to xor with the plaintext to get the ciphertext. So in this mode, it doesn’t need to pad data. And it could decrypt data in parallel, not encryption. This mode is similar to the CBC, so if there is a broken block, it will affect all following block. This mode can be attacked by replay attack. For example, if you use the other ciphertext to replace the new ciphertext, the user will get the wrong data. But he will not know the data is wrong. It is safe from CPA, but it is easily susceptible to CCA.
Now we know sort of how it works, which to be honest probably wont be on the test but key length/size might be so lets find that out. There is no solid answer but it looks like 128/192/256 as well per a variety of sources. Also, the information from PDF seemed more confusing than helpful on this one
Ok, moving on to the next one, this one is supposed to be the best but has a patent on it in the US and that’s about all I know, so far. In addition I’m pretty sure I will never use this stuff at work as I still don’t use the stuff I learned 5 years ago in my day to day job, unfortunately. However, I honestly like to learn. It’s like going to gym for your brain and its hard to say you are not qualified with a bunch of letters and names next yours that are hard to acquire. Little trophies if you will. Anyway, this ones called OFB
So im going to go with some text right for the site I keep mentioning. Also, if not previously noted the other modes do pad blocks with additional text if they are not specific sizes. This is worth noting.
The OFB (Output FeedBack) mode of operation (Fig. 4) also enables a block encryptor to be used as a stream encryptor. It also doesn’t need padding data. In this mode, it will encrypt the IV in the first time and encrypt the per-result. Then it will use the encryption results to xor the plaintext to get ciphertext. It is different from CFB, it always encrypts the IV. It can not encrypt/decrypt the IV in parallel. Please note that we won’t decrypt the IV encryption results to decrypt data. It will not be affected by the broken block. It is safe from CPA, but it is easily susceptible to CCA and PA. A Mallory can change some bits of ciphertext to damage the plaintext.
So it encryps like ECB first, spins the data and then you have the output. There are two things mentioned in this that I would like to be aware of ‘mallory’ and ‘steam encryptor.’ I cant find a ton of info on this but I think the point being that its good to also sign the encrypted data with some form of hash to ensure a signature verification. On to the next part: Overview: Stream Ciphers vs. Block Ciphers
A stream cipher is an encryption algorithm that encrypts 1 bit or byte of plaintext at a time. It uses an infinite stream of pseudorandom bits as the key. For a stream cipher implementation to remain secure, its pseudorandom generator should be unpredictable and the key should never be reused. Stream ciphers are designed to approximate an idealized cipher, known as the One-Time Pad.
So I think the point being, timestamps are good, wait no…anyway, instead of having a block that has to be specific size it will encrypt the data one character at time. I kind of like what the PDF has to say about this one:
The OFB (Output FeedBack) mode of operation (Fig. 4) also enables a block encryptor to be used as a stream encryptor. As shown in Fig. 4, the difference between the CFB and OFB mode is such that, in the case of an OFB, as an input for the shift register from the next block, the output from the encryptor (Encrypt) from the previous block is chosen. At the same time, the XOR operation with the s-bits of plain text P uses only s bits from the encryptor. Encryption and decryption are the same operation [6]. If there is an error in a block during the encryption, while performing the decryption, it will influence only a part of the plain text that will result from that block, i.e. there is a limited propagation of error [2, 3]. Therefore, this mode of operation is often used in communication through media that carry noise (for example, satellite communications). According to [6], the IV should be a nonce. The guidelines given in [8] suggest that the IV should be chosen randomly and used only once with the given encryption key K. In [7] it is stated that security does not exist if the IV is a nonce, but the sequence generated by some counter is acceptable. The CFB mode of operation is vulnerable to attacks performed by modification of bits in the encrypted stream [2].</p>
This also notes how often you can use a key before a new one should be generated but given the amount of information we are consuming I have decided to leave that out in hopes that it will not be on the test as I have seen 0 test prep questions’s about key generation.
Moving on to the next one, last one. I think. Wow, I have spent a ton of time on this but I can’t say that I am not having fun. The logical reality of the scale of this is absolutely daunting. This one is CTR
And I like the text from the ‘high go’ site the best for this one as well.
At the CTR (Counter) mode of operation, shown in Fig. 5, as an input block to the encryptor (Encrypt), i.e. as an IV, the value of a counter (Counter, Counter + 1,…, Counter + N – 1) is used. It also is a stream encryptor.The counter has the same size as the used block. As shown in Fig. 5, the XOR operation with the block of plain text is performed on the output block from the encryptor. All encryption blocks use the same encryption key. As this mode, It will not be affected by the broken block. It is very like OFB. But CTR will use the counter to be encrypted every time instead of the IV. So if you could get counter directly, you can encrypt/decrypt data in parallel. A Mallory can change some bits of ciphertext to break the plaintext. In the database encryption, we can use CBC to encrypt all the files.
So it seems like its similar to the previous one but it uses a proxy or counter to reference back to. The PDF text basically says the same thing but a little bit more complicated wording.
Anyway, that’s all for now. Wow, this took forever but I did learn a lot and I feel much better about encryption in general. However, if left with the ‘Mallory’ question and wondering about the data validation that using HMAC with AES takes care of. I am happy to realize that all but ECB use 128/192/256 key sizes which I may intermittently call ‘block sizes’ which are different, sort of. Actually, I guess I didn’t look at key sizes for the last 2 did I. Hum, maybe I could say that now. Ok, it appears to be the same. For sure going to have to go back and read this later and possibly edit some things. For now though, I have shoeshine head for sure but boy was that great haha
Multi-part questions, tough but I will say that I saw some questions directly from these on the last test so its probably a good idea to at least understand them and probably have them memorized. So here we are. Then I have to start going through the questions that I missed the first round through the entire lot again and see how I’m doing. If I’m in the mid 90’s on those, ill go back through the entire lot and then see where am at. I’m not really feeling like going through slides tonight so I’m thankful to have some test stuff to blog.
Anyway, here’s this:
The cell phone is pretty obvious, maybe not the pop-up blocker or possibly GPS tracking. However, the server one is a repeated theme. I’m not really sure what a sniffer is, are they talking about a packet sniffer? I’m going to assume so. The proximity reader is for smart card access. Not like, detecting people near by. I once thought that but not recently haha
The only thing here thats not expected is the safe in the office. Not really sure what that is used for nut I should be able to remember this one.
This is debatable because while WPA2 Personal will work with LDAP it seems like it would be better to use enterprise. This is Security. Why are we worried about what wireless channel we are using when using WPA2 to authenticate with the server. Assuming we not setting them up as Radius clients. Which brings up the point, does WPA2 personal work with Radius? Assuming no but I should check that out and the reason for the channel. Also, im pretty sure that was the entire question and theres no answer as to what a AAA server is. WPA2-PSK does not use Radius. Pretty sure they mean the LDAP server by the AAA server as that seems to be an older term for an authentication server. Per this article the 11 answer is somewhat random Why Channels 1, 6 and 11?
You know, at this point one would think I would know this but I keep skipping over it so I don’t have to look at it and think. Yeah, raid 0 is no fail over on one volume on several disks, raid 1 is two mirrored disks, Raid-5 is 3 disk with parity data for one disk failure and raid 6 has twice as much parity data to tolerate a two disk failure in a cluster. The parity size does vary based on array: RAID 6 (redundant array of independent disks)
All right, No idea on this guy. I mean I haven’t really looked at it but dear god for the love of holy moses do I hate subnetting. I mean, I get it. Some people are great at this math nonsense and its not me. Does that make me less fun or viable. No, when was the last time someone didn’t use a calculator for this. Anyway, yeah IPv6, FML. Lets get to the question. You know, after actually reading the question its pretty straight forward. The only thing that might trip me up is using SCP instead of SSH. SCP (secure copy protocol) uses port 22. Why the hell they are using CIDR for anything in the source IPs is really annoying. Assuming its more than one machine but who knows. Who told them to do that? regardless, its literally, source, destination and maybe the port number and type of traffic. Which is TCP in both cases.
All right, that’s all for tonight. I think I’m going to buy some car tires in the morning. That’s stressful, for some reason haha
Still having some blogging to do. That last one was a a page turner haha. I mean, if your into learning this stuff. There are so many interesting sources of information on the internet that seen relevant and the issue with them is, how in the world am I supposed to consume all this. So, the goal is to find streams of information that seem accurate and relevant and I try to post links to that on here while keeping an eye on the encyclopedia of info that is free to use online. That’s the good and bad thing about the whole open source nature of CompTia exams. MicrosoftDocs is great but as you may have noticed they don’t have step by step tutorials with a lot of documented screen shots as vendors that integrate with their technology do. So anyway, lets get into study time and as previously noted, this is an exam study blog haha so feel free to click on stuff.
So these generic access control things kind of drive me nuts so while I understand MAC, I’m not quite clear on the others and wanted to back through that
Ok so before we get started I found this on Stackexchange and liked it: MAC makes decisions based upon labeling and then permissions. DAC makes decisions based upon permissions only. RBAC makes decisions based upon function/roles.
DAC – all these are confusing but here goes: Discretionary Access Control Discretionary Access Control (DAC) was originally defined by the Trusted Computer System Evaluation Criteria (TCSEC) as “a means of restricting access to objects based on the identity of subjects and/or groups to which they belong. The controls are discretionary in the sense that a subject with a certain access permission is capable of passing that permission (perhaps indirectly) on to any other subject (unless restrained by mandatory access control)”. In practice the use of this terminology is not so clear-cut. In the strictest interpretation, each object controlled under a DAC must have an owner who controls the permissions that allow access to the object. Although many modern operating systems support the concept of an owner, this is not always implemented. In particular the standard does not cover “owners” leaving a problematic definition when group ownership occurs. also the objects in question have an ‘owner’ with read/write/permission control
MAC – Mandatory Access Control: this one is role defined in that rather than the object having users associated with it, the information has a label and the users have assignments of what labels they have access to is system-enforced access control based on subject’s clearance and object’s labels. Subjects and objects have clearances and labels, respectively, such as confidential, secret, and top secret. A subject may access an object only if the subject’s clearance is equal to or greater than the object’s label. Subjects cannot share objects with other subjects who lack the proper clearance or “write down” objects to a lower classification level (such as from top secret to secret). MAC systems are usually focused on preserving the confidentiality of data.
Role-based AC – You would think that MAC would have this name but it doesn’t. Any way, its pretty much the same thing but more granular
Rule-based AC – RuBAC (i think that PBAC P is for policy, is the same thing) honestly, im not sure the internet thinks this one is real for data access but I did find this pertaining to networking: With rule-based access control, when a request is made for access to a network or network resource, the controlling device, e.g. firewall, checks properties of the request against a set of rules. A rule might be to block an IP address, or a range of IP addresses. A rule might be to allow access to an IP address but block that IP address from use of a specific port, for example port 21 commonly used for FTP, or port 23 commonly used for Telnet. A rule might be to block a specific IP address, or block all IP addresses from accessing certain applications on the network, such as email or video steaming.
Ok, I feel like I’ve sort of defined this but to be honest I may have to dig through it again. Anyway, one question in and I have a headache but lets look at the other ones related to this
This one is cut and dry with the question of access control and using labels or classifications of data. That’s clearly MAC
MAC has admins and DAC has owners of data. Not really sure about that for RBAC, guess I could check that out. Ok, looks like its the same as MAC in that there are admins and then users however it seems to very based on flavor as to what they are called. Other than admin.
I feel like some of the classifications with these require clarification. There are probably more of these that I need to cover and I may get back to that at another time but for now lets look at these two slides
I don’t understand how managing back end services isn’t what the first one is saying. So, I think there are some issues here with wording as a What Is a Cloud Access Security Broker (CASB)? is a service that hardens your access to your cloud resources. There is also Security as a Service, in addition to Software as a Service. The first question makes sense and I think this second one is poorly worded as its not describing any thing having to do with security. I mean, managed services of the back end is what a CASB is talking about but its not exactly accurate.
The thing is, I dont know why you wouldn’t use TLS but lets find out.
Per stackexchange:SSL/TLS protects the email from tampering or eavesdropping as it transits between your computer and Google’s server, and possibly during further relays to eventual recipient. And that’s all it does. PGP does far more. If you’re sending a signed email, the recipient can verify that the email was sent by you, and that it was not tampered with at any point between when you wrote it and when they received it. If you’re sending an encrypted email, you know that nobody but the intended recipient can read it — not Google, not the NSA, nobody. That’s why it’s called “End to End Encryption”. However, the email metadata (from, to, subject, time stamps) is still sent in clear, and PGP can’t help with that. So in general, it’s best to send PGP-encrypted emails via TLS-secured connections.
So that is some help. Anyway, that’s all for tonight. I feel like I learned a lot about my being better at my job but that is immaterial at this point as im only interested in one thing, getting through my shift haha
Still having trouble with a few things after moving through the third round of going through questions. Wait, maybe that was the 4th. Yeah, the 4th. Also, this took about 3 days to write I think? Maybe longer. Wait, I might have started on Wed night. Anyway, as I was saying on twitter:
So, I still have a some learning to do. I can honestly say that this is a lot more work that I realized it would be however I think in the end it will be worth it. It’s one cert but hopefully employers realize what all goes into it and how much you have to know going into the test. Tonight im going back over some authentication stuff. While I’m starting to get the hang of how some of it works, I’m not quite the expert that I would like to be before even thinking about taking the test. In addition with cloud computing being what it is these days, authentication, encryption and hashing is going to become more and more important as more sensitive data goes out of a firewall and through a VPN tunnel to connect to Azure or AWS hardware. Another note, as MSFT has done away with the Server certification program for 2019 I’m personally hoping that they move newer editions to being an Azure only based function because for Systems Admin types or (hopefuls, in my case) its frustrating to think that we may be required to understand Windows Server for Azure but also understand how AWS works incase a company goes off prem and decides to go with Amazon for hosting. I understand using AWS for web servers but its an administrative nightmare for anyone actually invested in MSFT tech in the IT job market.
Anyway, lets get into some questions.
This one was a tough one for me and I’m not sure why it took me this long to blog it however I found SSL Authority to be quite helpful. There are variables to this and I can pretty much promise ill be expected to know all of this and here is the important part
What information can be gathered from an SSL Certificate Consumers have access to a lot of information related to TLS/SSL certificates right in their browsers. While not all consumers are terribly interested in the in-depth information available at the click of a mouse, it is important to be aware of what public details are discoverable through an SSL certificate.
Issuing certificate authority (CA)
Validity period (as well as certificate revocation list, or CRL, data)
Domain it was issued to
Company operating the website
Key usage
Info on algorithms and hash-based cryptography
I’m kind of surprised to see the words ‘OID’ not specifically mentioned and that algorithms and hashes are. So now we have to figure out what they mean by OID: Object Identifiers (OID) in PKI
Now thats really confusing but if you look at the output we see a GUID for the certificate and the issuing authority being, im assuming, Public Key Services and the domain it was issued to being Contoso.org with a GUID of, that big long number. How they are pulling hashing and encryption info out of that, I’m still not sure and I’m hoping to not see it on the test because that is a pretty large rabbit hole. So for now, I’ve got this question down of an OID that is an entire wheelhouse of things. It does seem like it would have info on the CSR like date of request and a validity period but it does not appear to have that per this PS information but according to the info from SSL authority you can but their website isn’t great. However, with this, SSL and SSL Certificates Explained For Beginners, we are really getting somewhere however it still isn’t showing what’s supposed to be on an SSL/TLS cert when you view it. Thankfully, I found this from Global Sign on a functioning website that’s actually helpful: How to View SSL Certificate Details in Each Browser and What You Can Learn and it goes through several types of browsers and was to view the info that is much easier to view than looking at fucking Powershell output and ill give you that its fun to look at but its not really helpful in the real world.
I mean, I could memorize it and say its the top three but that’s not exactly helpful for a host of reasons. The other part about this is that I probably covered this before. Wow, The more time I spend with this the more I realize that Security+ is just as hard as my first MCSA. So anyway, this seems like a very important questions lets make a list here:
S/MIME – allows you to digitally sign your emails to verify you as the legitimate sender of the message, making it an effective weapon against many phishing attacks out there. Does use a PKI
TLS – for sure uses a PKI, there is no way to be confused about this one
SFTP – This one is a little tricker to find info for but it can use SSL keys from a PKI: GoAnywhere Managed File Transfer supports the use of SFTP to secure, automate, and audit file transfers. You can authenticate users with a passwords and SSH keys, meaning you can choose one, the other, or both to satisfy your IT security requirements. With our SFTP client, you can also deliver and retrieve files from your SFTP server through an encrypted tunnel, transfer multiple encrypted files per connection, set up alerts for failed transfers, and more.
SAML – so here is the thing with this one, it retains OAUTH credentials and passes it on as a SSO data and OAUTH supports SSL Certificates from a PKI
SIP– this is a voip protocol and the only way to secure it is basically running it through a VPN
IPSec – this is basically a VPN and there is a ton of information about this out there. It seems like it can use SSL but naitvely the key pairs are between machines that have them rather than needing to issue a CSR
Kerberos – uses a KDC to authenticate each user and is a slightly different thing than a PKI as this is authenticating communication between two machines rather than being just use a token granting access to a network for user.
Wow, that was a lot of information and I’m slowly realizing how much stuff I’m missing out on by not chasing down all these rabbits however I can say that I do appreciate using a learning curve to slowly gain a complete picture rather than try to grasp everything at once about a singular subject.
All right, welp, Im not getting this post done tonight but lets move on to the next question.
I covered this in a previous post but I wanted to again, state which of the variables that the answers worked with:
LDAP – Mutual authentication = No | SSO = (not by its self link) | Smart Cards = not a definite answer but appears to be a no|
MSCHAP – Mutual authentication = yes | SSO = no | Smart Cards = no |
Ok, that was the most time I’ve spent on any single item so far but I have to say that all the reading was worth it because I understand all of the protocols listed much better.
I’m not sure that this is really makes any sense. If the PC’s are set up on a domain and it can’t connect to the domain on older versions of windows it may have issues. Logon certificate issues seems odd though. I searched for specifics and I couldn’t find a thing.
My worry here is not what uses TLS but what the other ones use and on top of that, I find PEAP confusing at this point! So lets start with some info on PEAP.
I’m going to start by digging through websites and this one: protocol/EAP PEAP I found particularly helpful, stating:
Ultimately, PEAPv0/EAP-MSCHAPv2 is the only form of PEAP that most people will ever know. PEAP is so successful in the market place that even Funk Software, the inventor and backer of EAP-TTLS, had no choice but to support PEAP in their server and client software for wireless networks.
1) EAP is basically a framework and is used as transport the authentication protocol. Can be used for wireless and wired networks. It is NOT an authentication method on its own. So you can authenticate as you want, password, MD5, certificates, biometric….
2) If you use EAP-MSCHAPv2, it means that your clients doesn’t need to have a certificate, but your authentication server (NPS) has a certificate. Passwords from the clients are send using hashes to the authentication server. To protect these password hashes being send over the network, you can use PEAP which act as a TLS/SSL tunnel to protect the authentication traffic.
3) Only the authentication server (NPS) needs a certificate. EAP-MSCHAPv2 is a password based authentication method.
4) You can use PEAP-EAP-MSCHAPv2 which uses a certificate on the authentication server (NPS) and a password for clients. You can use PEAP-EAP-TLS which use a certificate on the authentication server and a certificate on the client. PEAP is used to protect to authentication traffic.
The following example configuration outlines how to set up Windows NPS as a RADIUS server, with Active Directory acting as a userbase:
Add the Network Policy Server (NPS) role to Windows Server.
Add a trusted certificate to NPS.
Add APs as RADIUS clients on the NPS server.
Configure a policy in NPS to support PEAP-MSCHAPv2.
(Optional for machine auth) Deploy PEAP-MSCHAPv2 wireless network settings to domain member computers using Group Policy
So so now we have learned a ton of info about PEAP and the thing that sucks about this is I’m going to keep going into this much detail on this stuff until I really get it down because given that I’ve been reading material thats 10 years old, there isnt exactly a rush to get this down before the next thing comes out. I also find it helpful and relevant. Anyway, lets check the wiki and get some highlights and from there and move on, for now. However, I want to take a closer look at radius and PEAP after this one.
Protected Extensible Authentication Protocol: Protected Extensible Authentication Protocol, also known as Protected EAP or simply PEAP, is a protocol that encapsulates the Extensible Authentication Protocol (EAP) within an encrypted and authenticated Transport Layer Security (TLS) tunnel.[1][2][3][4] The purpose was to correct deficiencies in EAP; EAP assumed a protected communication channel, such as that provided by physical security, so facilities for protection of the EAP conversation were not provided.[5]
PEAP is similar in design to EAP-TTLS, requiring only a server-side PKI certificate to create a secure TLS tunnel to protect user authentication, and uses server-side public key certificates to authenticate the server. It then creates an encrypted TLS tunnel between the client and the authentication server. In most configurations, the keys for this encryption are transported using the server’s public key. The ensuing exchange of authentication information inside the tunnel to authenticate the client is then encrypted and user credentials are safe from eavesdropping.
MS-CHAPv2 is an old authentication protocol which Microsoft introduced with NT4.0 SP4 and Windows 98. PEAPv0/EAP-MSCHAPv2 is the most common form of PEAP in use, and what is usually referred to as PEAP. The inner authentication protocol is Microsoft’s Challenge Handshake Authentication Protocol, meaning it allows authentication to databases that support the MS-CHAPv2 format, including Microsoft NT and Microsoft Active Directory.Behind EAP-TLS, PEAPv0/EAP-MSCHAPv2 is the second most widely supported EAP standard in the world. There are client and server implementations of it from various vendors, including support in all recent releases from Microsoft, Apple Computer and Cisco. Other implementations exist, such as the xsupplicant from the Open1x.org project, and wpa_supplicant. As with other 802.1X and EAP types, dynamic encryption can be used with PEAP. A CA certificate must be used at each client to authenticate the server to each client before the client submits authentication credentials. If the CA certificate is not validated, in general it is trivial to introduce a fake Wireless Access Point which then allows gathering of MS-CHAPv2 handshakes.[9] Several weaknesses have been found in MS-CHAPv2, some of which severely reduce the complexity of brute-force attacks making them feasible with modern hardware
It turns out that looking for PEAP and Radius info is kind of sketchy. As I understand it though you set up a Radius server, NAP server in Windows, set the access points to Radius clients and verify the machines on the back end. Not sure at this point if a local certificate is required or installed by GP based on MAC or how that works. Anyway, I’m now looking at this 802.1X Overview and EAP Types:
EAP-TLS (Transport Layer Security) provides for certificate-based and mutual authentication of the client and the network. It relies on client-side and server-side certificates to perform authentication and can be used to dynamically generate user-based and session-based WEP keys to secure subsequent communications between the WLAN client and the access point. One drawback of EAP-TLS is that certificates must be managed on both the client and server side. For a large WLAN installation, this could be a very cumbersome task.
PEAP (Protected Extensible Authentication Protocol) provides a method to transport securely authentication data, including legacy password-based protocols, via 802.11 Wi-Fi networks. PEAP accomplishes this by using tunneling between PEAP clients and an authentication server. Like the competing standard Tunneled Transport Layer Security (TTLS), PEAP authenticates Wi-Fi LAN clients using only server-side certificates, thus simplifying the implementation and administration of a secure Wi-Fi LAN. Microsoft, Cisco, and RSA Security developed PEAP.
TLS, while very secure, requires client certificates to be installed on each Wi-Fi workstation. Maintenance of a PKI infrastructure requires additional administrative expertise and time in addition to that of maintaining the WLAN itself.
So, if you use TLS then you have to find a way to push WEP keys to workstations. Which is generally done by deploy PEAP-MSCHAPv2 and then pushing them via AD. So that’s confusing. Ok, I’m moving on at this point because I have spent a lot of time on this, no promises that I wont come back to it. Anyway, here’s a link from a vendor I found helpful: How To Set Radius Server (NPS) When Using WPA-EAP, WPA2-EAP Or WPA2-AUTO-EAP
To be honest though, I’m walking away from this which a much clearer understand of each of those things, so I guess, goal accomplished?
You may have realized that I just spend a ton of time, like 3 days in fact, reading about PEAP which is a rabbit hole of other stuff and I haven’t been on an adventure hunt like that in a long time. Looking at this one now, and realizing what we learned previously with:SAML – so here is the thing with this one, it retains OAUTH credentials and passes it on as a SSO data and OAUTH supports SSL Certificates from a PKI
And realizing exactly what the other stuff does, OAUTH is the only thing that makes sense at all.
I got this one right but I wanted to go over each authentication type and what kind of key exchanges each one is using. You know, lets start with basics here because I really got up and running pretty fast on some of this stuff and this might be helpful: Hashing Algorithms
Ok so, that only covers SHA-2 and that’s not really helpful but it does have links and I’m going to dig through those and I didn’t find any thing super helpful so lets dive into these individually. There is one other thing that I would like to find some basic info on to cover a fuckin gin, asymmetric vs symmetric keys because I don’t really understand it: Symmetric vs. Asymmetric Encryption – What are differences?
I still don’t understand the diagram on the asymmetric system because it looks like the two keys just bump into each other and magic happens. Which has been my issue since I really started reading about such things but in any case there is still a pair of keys. Maybe more, im not really sure haha but it looks like it still somehow is sending a private key? I know its not because it has to be on a server but where does it come from. Anyway, this link: Symmetric Encryption, Asymmetric Encryption, and Hashing is also helpful but maybe I can find another answer as to ‘where do babies come from’
I found this to be helpful: A Deep Dive on End-to-End Encryption: How Do Public Key Encryption Systems Work? but I would still like to walk through the who process so lets try and find an example of a RSA key gen situation: ssh-keygen – Generate a New SSH Keyok, now this suddenly makes sense, you have to generate keys to use, create a file that has an associated password and they don’t simply randomly appear on a server that has a signed PKI certificate from like godady or something. However that does add an additional layer of complications. I think I’ll eventually get this sorted though
RSA – A user of RSA creates and then publishes a public key based on two large prime numbers, along with an auxiliary value. The prime numbers must be kept secret. Anyone can use the public key to encrypt a message, but only someone with knowledge of the prime numbers can decode the message.[2] Breaking RSA encryption is known as the RSA problem. Whether it is as difficult as the factoring problem is an open question. There are no published methods to defeat the system if a large enough key is used. So its asymmetric
3DES – Triple DES (3DES or TDES), officially the Triple Data Encryption Algorithm (TDEA or Triple DEA), is a symmetric-key block cipher, which applies the DES cipher algorithm three times to each data block. The Data Encryption Standard’s (DES) 56-bit key is no longer considered adequate in the face of modern cryptanalytic techniques and supercomputing power. However, an adapted version of DES, Triple DES (3DES), uses the same algorithm to produce a more secure encryption. So 1 key that is passed with the file with varying degrees of hashing associated, as I understand it. I added a link that’s pretty in depth beyond what the wiki pages offers but im still not certian I understand the key exchange as its not symmetric or asymmetric
DSA – DSA algorithm works in the framework of public-key cryptosystems and is based on the algebraic properties of modular exponentiation, together with the discrete logarithm problem, which is considered to be computationally intractable. The algorithm uses a key pair consisting of a public key and a private key. The private key is used to generate a digital signature for a message, and such a signature can be verified by using the signer’s corresponding public key. The digital signature provides message authentication (the receiver can verify the origin of the message), integrity (the receiver can verify that the message has not been modified since it was signed) and non-repudiation (the sender cannot falsely claim that they have not signed the message). So its symmetric and the definition does help to clear up information around the issues of key exchanges
SHA-2 – is considered symmetric
I hate these things and have trouble remembering them so lets define them
ALE – Annualized loss expectancy
ARO – Annual Rate Of Occurrence
SLE – Single Loss Expectancy
ROI – Return on Investment
RPO – Recovery Point Objective
RTO – Recovery Time Objective
Once you realize what they stand for and are creative enough to look at the letters and figure it out its super easy haha
Man, I don’t remember the last time I did this much research for one post. This took several days and I learned a ton. Do I remember every thing in this. Not sure but I think so? Anyway, that’s all for now and im sure that there will probably be more on encryption/hashing/authentication to come.
Short post tonight. Finally got through the questions that I missed the first run through of the massive block of questions and found that I got half the ones I missed the first time correct. This is a typical scenario but the block of questions is unbelievably massive. I mean, its for sure do able but this thing is going to take some time. As usual I had hoped to be done by now but while I’ve made progress I am no where near close to obtaining the cert. Hopefully soonish without getting super burnt out on the material. No idea what I will do I after getting this one. It was announced that MSFT had done away with the MCSA program for server and at this time has given no alternative path for learning. I find this interesting as how are people supposed to learn basic network architecture, specifically AD without this. Welp, I guess they will think of something to keep me entertained. Oh, but right im going to get every cert ever and all that. I mean, maybe long term but that will take a while to organize haha
So anyway, making progress. Once I hit the mid 90s on all 700 questions I’ll pay to take the test and quite possibly fail it.
I wasnt sure about this but I thought I would look it up any way
and the second half of that TACACS is defined in RFC 1492, and uses (either TCP or UDP) port 49 by default. TACACS allows a client to accept a username and password and send a query to a TACACS authentication server per the TACACS wiki
Control diversity? defense in depth? I think the first concept is using a multi-vendor solution to your architecture but lets look it up to be sure.
This control diversity thing is kind of odd but its indicating that technical, administrative and physical controls of varying types. Clearly different than vendor diversity. The link for defense in depth is a little different Defense in depth (also known as Castle Approach[1]) is an information assurance (IA) concept in which multiple layers of security controls (defense) are placed throughout an information technology (IT) system. Its intent is to provide redundancy in the event a security control fails or a vulnerability is exploited that can cover aspects of personnel, procedural, technical and physical security for the duration of the system’s life cycle.
Seems the same but slightly different? Anyway, realizing that its not vendor diversity helps. Welp, thats all for now. Time to go through the ~120 questions or so I missed and go through those again and then go through the 242 again and then, the entire 700 lot and see where im at. If I get my first test in by June ill be happy.
Welp, I’m finally almost caught up on bogging which means that its back to going through test prep questions. Man, this thing is a monster and I cannot stress that enough. I have been taking it slow though. Which has curved burn out and what I’m calling shoe shine head. Not great at memorizing without reason, again, so its hard to just go through this many things and know all the answers. The other part of that is that the questions on the pretest most likely will not be on the actual test which means, shocking, you have to know the material.
Anyway, this was my score going through the pretest completely and as you can see I have a ways to go. I’ve been through about half the questions I missed and realized towards the back end (the questions I didn’t blog before going through them) that I needed to blog those bad boys haha
Anyway, lets get into this lot of questions. It seems I marked some more for review so possibly get ready for some more stuff (no one reads this lol) that I’ve covered before!
This is the type of question that gets me nervous because it says a configuration has not been entered on the firewall and then seems to state that there is an implicit deny rule. This leads me to think that I should be looking to set a configuration. However, when thinking back on it now ACL is kind of weird thing to put on a new firewall and inbound/outbound rules are not. The wording is a little off putting on this but I for sure see where they are going with it and it should be something that I’m able to catch on to.
I cant seem to find anything about this anywhere online. The only example info about buffer overflow is red team type definitions rather than ‘what blue team should look for’ type of things. Anyway, I’m not sure how a ping is a indicator of a buffer overflow. I guessed at the answer though. Again, this is the type of question that worries me and I’m pretty sure I’m not going to pass the first time based on stuff like that.
A Root Bridge is a reference point for all switches in a spanning-tree topology. Across all connected switches a process of election occurs and the Bridge with the Lowest Bridge ID is elected as the Root Bridge. Bridge ID is an 8-byte Value that consists of 2-Byte Bridge Priority and 6-Byte System ID which is the burned in MAC address of the Switch. Initially all switches began advertising them selves as the Root Bride in BPDUs but once they receive a superior BPDU, one which has a lower Bridge ID, they cease the messages and starts forwarding the superior BPDUs. In the above Figure all switches began with advertising themselves as the Root Bridge. When Switch B receives the BPDU from Switch A it compares the Bridge ID of itself with that of Switch A. Since the Priorities are same, the MAC address is used as the tie breaker and thus Switch A wins due to lower MAC Address. Switch B stops sending its BPDU and forwards the BPDU from A. This Process repeats on Switch C as well and it ceases the generation of BPDU and instead forwards BPDUs from A. Now a single reference point for the network is elected which is Switch A, all other switches now forward STP BPDUs received from Root Bridge.
I didn’t include the diagram but its still legable and the important part is this: of 2-Byte Bridge Priority and 6-Byte System ID which is the burned in MAC address of the Switch and once they receive a superior BPDU, one which has a lower Bridge ID, they cease the messages and starts forwarding the superior BPDUs
Again, this is one of those authentication/hashing/encryption things that I feel like I should have a very clear idea of every single thing about each one of them for some reason but don’t
PBKDF2 – Password-Based Key Derivation Function 2 – are key derivation functions with a sliding computational cost, used to reduce vulnerabilities to brute force attacks. PBKDF2 applies a pseudorandom function, such as hash-based message authentication code (HMAC), to the input password or passphrase along with a salt value and repeats the process many times to produce a derived key, which can then be used as a cryptographic key in subsequent operations. The added computational work makes password cracking much more difficult, and is known as key stretching.
bcrypt – Besides incorporating a salt to protect against rainbow table attacks, bcrypt is an adaptive function: over time, the iteration count can be increased to make it slower, so it remains resistant to brute-force search attacks even with increasing computation power.
HMAC – sometimes expanded as either keyed-hash message authentication code or hash-based message authentication code) is a specific type of message authentication code (MAC) involving a cryptographic hash function and a secret cryptographic key. As with any MAC, it may be used to simultaneously verify both the data integrity and the authenticity of a message. Any cryptographic hash function, such as SHA-256 or SHA-3, may be used in the calculation of an HMAC; the resulting MAC algorithm is termed HMAC-X, where X is the hash function used (e.g. HMAC-SHA256 or HMAC-SHA3). The cryptographic strength of the HMAC depends upon the cryptographic strength of the underlying hash function, the size of its hash output, and the size and quality of the key. does not mention salt directly on the wiki
RIPEMD – RIPEMD, as well as RIPEMD-128, is not considered secure because 128-bit result is too small and also (for the original RIPEMD) because of design weaknesses. The 256- and 320-bit versions of RIPEMD provide the same level of security as RIPEMD-128 and RIPEMD-160, respectively; they are designed for applications where the security level is sufficient but longer hash result is necessary.
salt – Salts also make dictionary attacks and brute-force attacks for cracking large numbers of passwords much slower (but not in the case of cracking just one password). Without salts, an attacker who is cracking many passwords at the same time only needs to hash each password guess once, and compare it to all the hashes. However, with salts, each password will likely have a different salt; so each guess would have to be hashed separately and compared for each salt, which is considerably slower than comparing the same single hash to every password. Thought this was work mentioning
Not sure why I picked a packet analyzer if they noticed the connections, which im not sure how they did without using netset, netstat would be the choice.
A seems like the normal choice here but what really happens is a massive amount of data causes the system to possible allow you to perform arbitrary actions or execute programs. However this very specific scenario is possible, as noted here. Again, this type of question is my nightmare.
Honestly not exactly sure what a SYN packet is, so lets check these two things out: some firewalls start triggering their own alerts when this rate is reached and may start dropping or refusing connections. and the half-open connections created by the malicious client bind resources on the server and may eventually exceed the resources available on the server. At that point, the server cannot connect to any clients, whether legitimate or otherwise. This effectively denies service to legitimate clients
From that info its pretty clear that it uses up the memory and then the server crashes.
For some reason this post took a while and actually exhausted me. Cant wait to hit the hay tonight. Listened to some interesting music tonight along with the fan on my laptop spinning up more than usual for some reason. Reminds me of my ex-wife for some reason. Always the same cycle hun? Anyway, new Taylor Swift video in a few hours that apparently she directed her self so, I guess I’m excited for that. Not a person I remember listening to a bunch of her stuff but was vaguely familiar with as I lived in Nashville for along time and was fairly social. Not that any of that information is any not completely random.
Finally getting around to getting back to this. For some reason decided to write some trap songs and put them over youtube beats. Kind of a waste of time, but whatever. I’ve also been regularly smoking for bout 2 months now. again. Ill take 2-3 days off in a row but generally im still smoking at least one cig a day. I promised my self would stop feb 1st and hear it is, the end of the month. Not sure what’s so stressful or has me concerned enough to think that I should smoke. I mean, I like smoking but there’s really no need for it. So, gotta make that choice to kick that again. Especially if im trying to run a 10 min mile. Gah, its always something with me isnt it? Truthfully, I’ve been around a lot of musicians since I was a young teenager and never recorded my self doing any thing. I wasn’t terribly disappointed with the results but I’m not quitting my day job. Here’s to being an adult. Anyway, lets get to these questions!
I’m not sure what they mean by key? Encryption key? So lets figure that out: In cryptography, a key is a piece of information that determines the functional output of a cryptographic algorithm. For encryption algorithms, a key specifies the transformation of plaintext into ciphertext, and vice versa for decryption algorithms. The next question is What is the bottom green answer and we have answered that previously but lets cover it again Online Certificate Status Protocol (OCSP) is an Internet protocol used for obtaining the revocation status of an X.509 digital certificate. So the total package answer gets a little sketchy and this is the most direct thing I can find, which is about as clear as mud A cryptographic key that is used with an asymmetric (public key) cryptographic algorithm and is associated with a private key. The public key is associated with an owner and may be made public. In the case of digital signatures, the public key is used to verify a digital signature that was signed using the corresponding private key. There are some questions here about what kind of encryption its using but heres some helpful info on private keys: Asymmetric cryptography, also known as public key encryption, uses two different but mathematically linked keys. The public key is made available to everyone that needs it in an easily accessible repository while the private key is confidential and only shared with its owner. In this method, whatever is encrypted with the public key requires the related private key for decryption and vice versa. Public key encryption is typically used for securing communication channels, such as email. Like theres no indication that its not symmetric encryption
NTLM does have a known pass the hash vulnerability The NTLM protocol uses one or both of two hashed password values, both of which are also stored on the server (or domain controller), and which through a lack of salting are password equivalent, meaning that if you grab the hash value from the server, you can authenticate without knowing the actual password.
There where two options here that I didn’t know what they where and clearly I picked the wrong one, so lets define those
VDSL – lol Very high speed digital subscriber line (VDSL)[1] and very high speed digital subscriber line 2 (VDSL2)[2] are digital subscriber line (DSL) technologies providing data transmission faster than asymmetric digital subscriber line (ADSL).
SRTP – SRTP uses encryption and authentication to minimize the risk of denial of service( DoS ) attacks. SRTP can achieve high throughput in diverse communications environments that include both hard-wired and wireless devices
Obviously I picked the wrong thing and the test question showed up as unhappy.
The ‘govern’ word really throws me off here but when looking at the definition off the answer the first sentence does seem to point to that Control diversity is the use of different security control types, such as technical controls, administrative controls, and physical controls. For example, technical security controls such as firewalls, intrusion detection systems (IDSs), and proxy servers help protect a network
This is one of those confusing things because NTLMv2 does use symmetric key encryption but from what im understanding twofish would be the one out of these that interacts with data at rest.
Well, that’s all for tonight. Hopefully we will meet some time again soon, blog. Absolutely no promises though but im pretty much telling you right now that will never happen. I can do whatever I want but currently I’m choosing to put shitty trap music voice memos in a drop box rather than be productive haha. Nah, thankfully this was less taxing than the others have been lately because some of the questions in the last few posts have been buggers and I would not be surprised if I came back around and blogged the same questions again.
This is taking more time that I thought it would, as usual. Being my arrogant self I thought I had covered a lot of the material but there are a bunch of detail gaps to fill. I have the most trouble with authentication and encryption protocols and given that I won’t see any direct questions from this VCE I’m going to have to really nail those down. The other thing is ports and those can be a bit mysterious at times because A isn’t always to B, if that makes sense. So, I need to really spend time on those and figure them out. It’s interesting to learn things and I find it useful and helpful in all sorts of scenarios where logic plays a factor even if the studied subjects don’t obviously correlate. Also, the word wrap feature in CoffeeCup doesn’t seem to scale with window size or it doesn’t do anything haha
So this one seems a little grey IMO as fuzzing is input validation and this is discussing ‘compiled code’ which may or may not have user input. Compiled code could run any thing, it doesn’t have to connect to a database that you could run cmds against.
Compiled code is a set of files that must be linked together and with one master list of steps in order for it to run as a program. This is opposed to a interpreted code like web scripts, host server scripts and BASIC that are run one line at a time. Another program called a compiler is designed to maximize the efficiency and speed of the program so that it runs faster than an interpreted version of the same program. A compiled program outputs an EXE or DLL file. A compiler also checks the code for errors. It will work up and down the code to scan for anything that will crash the program or is syntactically wrong. A program with untested code can do anything to your computer including very bad things if not contained within its space. Lots of time is spent by a programmer to get an error free compiled EXE file. (And even then you can get infinite loops, etc.) In the end the point of compiling is to create a most efficient, compact EXE file for optimal running of the program.
However when you google complied code fuzzing it points at this: Compiler Fuzzing: How Much Does It Matter? so I’m going to read through it. Quick tip, get good at reading fast, remembering what you read and recognizing the high lights for getting certs efficiently.
So, after reading this it seems like what they are pointing at is miss computation errors made by compilers. Fuzzing, as I understood it was more a mater of checking to see how code responds to things, now if you follow that around it turns out that what they mean is how the code responds to a specific set of instructions given by the user or machine that is interacting with the program and checking if the results are correct. Under this logic it absolutely makes more sense. However, does it make more sense than labeling it regression testing. I guess we should get a better idea of what that is because I thought that sort of was what regression testing was, does the application function as designed.
REGRESSION TESTING is defined as a type of software testing to confirm that a recent program or code change has not adversely affected existing features. Regression Testing is nothing but a full or partial selection of already executed test cases which are re-executed to ensure existing functionalities work fine. This testing is done to make sure that new code changes should not have side effects on the existing functionalities. It ensures that the old code still works once the latest code changes are done.
So this seems to indicate that regression testing does a similar thing but instead of being a new application its an application that is adding new functionality. In this case it would appear that there is no indicator that says the code is a new feature of an older application.
I’m going to define these, again.
AES – AES comprises three block ciphers: AES-128, AES-192 and AES-256. Each cipher encrypts and decrypts data in blocks of 128 bits using cryptographic keys of 128-, 192- and 256-bits, respectively.
SSL – Transport Layer Security, and its now-deprecated predecessor, Secure Sockets Layer, are cryptographic protocols designed to provide communications security over a computer network. Several versions of the protocols find widespread use in applications such as web browsing, email, instant messaging, and voice over IP
TLS – (the link is really good) Transport Layer Security, the more recent encryption protocol that has replaced SSL
RSA – one of the first public-key cryptosystems and is widely used for secure data transmission. In such a cryptosystem, the encryption key is public and it is different from the decryption key which is kept secret.
In addition, Data At Rest wiki notes: Data encryption, which prevents data visibility in the event of its unauthorized access or theft, is commonly used to protect data in motion and increasingly promoted for protecting data at rest.[7] The encryption of data at rest should only include strong encryption methods such as AES or RSA. Encrypted data should remain encrypted when access controls such as usernames and password fail. Increasing encryption on multiple levels is recommended. Cryptography can be implemented on the database housing the data and on the physical storage where the databases are stored. Data encryption keys should be updated on a regular basis. Encryption keys should be stored separately from the data. Encryption also enables crypto-shredding at the end of the data or hardware lifecycle. Periodic auditing of sensitive data should be part of policy and should occur on scheduled occurrences. Finally, only store the minimum possible amount of sensitive data
Lots of useful information here but the answer was found in the Data at rest info.
These types of questions seem subjective to me. I mean, if this ‘analyst’ isn’t in the security department he should let them know rather than attempt to fix it him self. The other way is also true. However, it does say security analyst and in this case it would appear that their department handles A-B remediation. Not sure if that’s always the case.
So, I have to admit, I did a lot of reading in the first half of this and was deliriously tired towards the end and realized that I should go back through the links in this one and the previous one. Which I will do tomorrow (possibly tonight) and possibly aim to get another one of these done. Anyway, back this and I’m going to make a list!
STelnet – I’m pretty sure this is SSH but its not really clear through google
SCP – is a means of securely transferring computer files between a local host and a remote host or between two remote hosts. It is based on the Secure Shell (SSH) protocol.[1] “SCP” commonly refers to both the Secure Copy Protocol and the program itself.[2] According to OpenSSH developers in April 2019 the scp protocol is outdated, inflexible and not readily fixed; they recommend the use of more modern protocols like sftp and rsync for file transfer. a network protocol, based on the BSD RCP protocol,[4] which supports file transfers between hosts on a network. SCP uses Secure Shell (SSH) for data transfer and uses the same mechanisms for authentication, thereby ensuring the authenticity and confidentiality of the data in transit. A client can send (upload) files to a server, optionally including their basic attributes (permissions, timestamps). Clients can also request files or directories from a server (download). SCP runs over TCP port 22 by default. Like RCP, there is no RFC that defines the specifics of the protocol.
SNMP – an Internet Standard protocol for collecting and organizing information about managed devices on IP networks and for modifying that information to change device behavior. Devices that typically support SNMP include cable modems, routers, switches, servers, workstations, printers, and more.
FTPS – FTPS (also known as FTPES, FTP-SSL, and FTP Secure) is an extension to the commonly used File Transfer Protocol (FTP) that adds support for the Transport Layer Security (TLS) and, formerly, the Secure Sockets Layer (SSL, which is now prohibited by RFC7568) cryptographic protocols
SSL – Transport Layer Security (TLS), and its now-deprecated predecessor, Secure Sockets Layer (SSL),[1] are cryptographic protocols designed to provide communications security over a computer network.[2] Several versions of the protocols find widespread use in applications such as web browsing, email, instant messaging, and voice over IP (VoIP). Websites can use TLS to secure all communications between their servers and web browsers.
SFTP – a command-line interface client program to transfer files using the SSH File Transfer Protocol (SFTP), which runs inside the encrypted Secure Shell connection.
The problem with this is that the answer is clear once you go through all of them finding a statement that says ‘implicitly uses x’
I dont know if I’ve said this before but let me be clear: I hate these things
Rule-based access control – With rule-based access control, when a request is made for access to a network or network resource, the controlling device, e.g. firewall, checks properties of the request against a set of rules. A rule might be to block an IP address, or a range of IP addresses. A rule might be to allow access to an IP address but block that IP address from use of a specific port, for example port 21 commonly used for FTP, or port 23 commonly used for Telnet. A rule might be to block a specific IP address, or block all IP addresses from accessing certain applications on the network, such as email or video steaming.
Role-based access control – With role-based access control, when a request is made for access to a network or network resource, the controlling device allows or blocks access to a network or network resource based on that user’s role in the organization. For example, an individual with the engineer role in an organization might be allowed access to the specifications of parts used in the company’s product, but blocked access to employee records. An individual with the supervisor role might be allowed access to employee records, but blocked access to engineering documents and specifications.
Mandatory access control – Often employed in government and military facilities, mandatory access control works by assigning a classification label to each file system object. Classifications include confidential, secret and top secret. Each user and device on the system is assigned a similar classification and clearance level. When a person or device tries to access a specific resource, the OS or security kernel will check the entity’s credentials to determine whether access will be granted. While it is the most secure access control setting available, MAC requires careful planning and continuous monitoring to keep all resource objects’ and users’ classifications up to date.
Discretionary access control – type of security access control that grants or restricts object access via an access policy determined by an object’s owner group and/or subjects. DAC mechanism controls are defined by user identification with supplied credentials during authentication, such as username and password. DACs are discretionary because the subject (owner) can transfer authenticated objects or information access to other users. In other words, the owner determines object access privileges.
Ok, those are starting to get a little clearer after reading definitions that are not from wikipedia. Anyway, thats all for today.
Really getting back into this and learning somethings. Which is nice! It’s good to learn. The great thing about independent study is that its hard to stop the flow of information on the internet. Some times learning things can be difficult because of acquiring information. You know people are always like “that’s the stuff they don’t teach you in high school” then at the same time don’t put much effort into learning about causes and design and so forth. Which is totally fine but I will say the people that try to learn the stuff that “they don’t teach in high school” generally don’t complain about it because they are aware of the level of passion for understanding and learning in society. I mean, seriously the catholic church is a thing but it’s also an institution of mankind, so make of that what you will, however the dark ages happened and it was a time when information was stopped to preserve the power of the Catholic Church. Scientist and theologians where both equally persecuted for questioning current doctrinal beliefs that left the papacy in the form of being ‘god’. It was hundreds of years before society actually progressed during the time of the renaissance. Thanks in no small part to the Medici’s of Florence and most notably papal sponsorship of fine art. Anyway, that’s neither here nor there. We live in a time when there is so much information available to make us better, more aware and more socially responsible people. A lot of talk about racism floats around these days though and you often have to take a look at what that really means and the causes. So many people claim to not be racist while putting forth obviously obsessive racist ideals because they think a culture harms their way of life. This is really alarming to me because its often disguised in the form of a plate of cookies or something and mean while there are people that bring ideas forward about jumping on a band wagon instead of trying to figure out what’s going on in the world. Understanding basic theology, philosophy and historical narrative in terms of events and art being made is vastly undervalued. We often trade that for some trite narrative of control or needing to seem important for no reason. There are lots of people that are very aware of this and its the same thing that lead to the dark ages. Personally, I don’t really give these people much mind as they have no intention of hearing what I have to say or what any book or painting may have to say. Its a haphazard form of senseless arrogance. Sound like any other group of people? Anyway, I digress into saying that there is a difference between ‘job security’ and malicious behavior.
So, lets get into some questions.
You know, at first I thought “why would a non-credentialed scan be worse than a credentialed” and I was all I guess I should check that out.
This clearly states Does not disrupt operations or consume too many resources because the scan is performed with credentials which indicates that the non-credentialed scan is more likely to harm infrastructure.
I have a hard time discerning the granular detail of difference between ‘Mission-essential function’ and ‘Identification of critical systems’ and really I think this is like a high school wording question.
So, there is a typo in this one with the the access the server, I’m assuming it should be ported to How do you access the server… regardless TLS is not tied to a port so im not sure why I committed to that choice. Anyway, this has a lot of information I found helpful
Transport Layer Security (TLS) looks like there is alot of information on this that might be useful to go through beyond this so I’m going to bookmark it.
There are still some questions to be answered: TLS is the updated version of SSL but SSL is tied to a port?
How Is SSL Different From TLS? TLS (Transport Level Security) is an updated version of SSL. The original SSL protocol was created by Netscape in the year 1995 and it was made public as ‘SSL 2.0’. Since then, updates have been made in order to ensure a powerful and secure connection. In the year 1999, ‘TLS 1.0’ was released which was an update to ‘SSL 3.0’. Since that time, TLS is the primary encryption technology that is used for securing data that is transmitted over the internet connections and SSL. However, as the term ‘SSL’ is more popular, widely known and recognized, the technology is known as SSL.
Basically they are saying if the traffic uses port 443 its a secure connection, which they label ‘SSL’, kind of annoying but whatever.
Im not sure I know what SRTP is or SIPS but I had heard of SIPS so I went with that one. Anyway, I guess I should figure that out.
SRTP – Secure Real-time Transport Protocol (SRTP) is a Real-time Transport Protocol (RTP) profile, intended to provide encryption, message authentication and integrity, and replay attack protection to the RTP data in both unicast and multicast applications. Uses AES for encryption.
SIPS – a signaling protocol used for initiating, maintaining, and terminating real-time sessions that include voice, video and messaging applications.[1] SIP is used for signaling and controlling multimedia communication sessions in applications of Internet telephony for voice and video calls, in private IP telephone systems, in instant messaging over Internet Protocol (IP) networks as well as mobile phone calling over LTE (VoLTE).
While SIPS doesn’t seem to indicate that its a secure protocol in its self, it does note that For secure transmissions of SIP messages over insecure network links, the protocol may be encrypted with Transport Layer Security (TLS). For the transmission of media streams (voice, video) the SDP payload carried in SIP messages typically employs the Real-time Transport Protocol (RTP) or the Secure Real-time Transport Protocol (SRTP). which leads me to wonder if all connections are normalcy SIPS on PBX and then using additional encryption methods.
First of all, I wasn’t really sure what a Online Certificate Status Protocol (OCSP) was based only on OCSP. However it is an Internet protocol used for obtaining the revocation status of an X.509 digital certificate.[1] It is described in RFC 6960 and is on the Internet standards track. It was created as an alternative to certificate revocation lists (CRL), specifically addressing certain problems associated with using CRLs in a public key infrastructure (PKI).[2] Messages communicated via OCSP are encoded in ASN.1 and are usually communicated over HTTP. The “request/response” nature of these messages leads to OCSP servers being termed OCSP responders
So a CRL is a better choice for traffic reduction? I don’t find any thing that seems to indicate is problematic but a CRL does seem to be the standard for this function.
Well, after the long dramatic intro, I’ve learned a few things. Reminded myself of a few thing and overall garnered a stronger idea of what it is I’m looking at with Security+ information and every time I go through and blog this stuff I’m reminded that this is a great cert with tons of information that I want to learn!