Python for SecurityExperts Cybrary Review

That is my report on the  Cybrary course, Python for Security Professionals, To begin with, I really appreciate the Cybrary.it model, the lessons are all free and you can buy a certificate of completion (which may help validate the 15 CPEs the course is worth, if you need to justify that form of thing) if you want at the end. However, the whole site model is interesting in as you are able to "complete" some of the courses (lol in reality, I've "completed" most of the courses), and choose the relevant certificate, without ever having clicked some of the video links. That seemingly large security mistake kind of invalidates the certificates, as anyone can obviously say the've completed the course and have the certificate with out done so. All of the aside, I really like the notion of free education material and we shall now be delving into the content of the Python for Security Professionals course. Like my other reviews, I'm likely to go over the material and recommend this based on your experience and time commitment. The course contains 10 hours of video content, which are pretty decent especially if you are attempting to learn Python from scratch, but slightly less if you are attempting to learn the nuances of Information Security. All of the modules are video focused, but come with PDFs of slides, activities in python programs, and the completed methods to the activities in python programs. Overall, the first four modules are very basic and mostly just cover programming in python vs security specific tasks. Another issue is that currently all of the videos are pretty blurry and it's hard to read the code / command line utilized in the video series. Because of this you've to view the videos in HD, nevertheless they address this in the comments and mention how they will undoubtedly be re-releasing the videos in a higher resolution. At the conclusion of the weekend, I'd recommend this course to somebody who is wanting to learn Python from scratch having an Information Security focus, but for someone with more of a background in Python, I'd actually recommend a text more like Black Hat Python, for more of an Information Security focus. Nevertheless, even although you are experienced with Python and Information Security, you could find the last two modules interesting (The Packet Gathering Module and the Info Gathering Module).


The initial module, Intro and Setup, is pretty basic and be easily skipped if you have any prior Python experience. Here he goes over just how to setup and install Python, as well as why it's an excellent language for rapid prototyping and security professionals.

The following module, Apprentice Python, is also very basic and still doesn't touch on anything security related. This module is about basic usage and arithmetic in Python. There's also a stumbling block in the 2nd video, as it's a little odd when he googles for solutions and then reads stack overflow during the tutorial.

The Journeyman Python module is interesting, but nevertheless doesn't delve into anything necessarily Information Security specific. In this module he talks a lot about networking protocols and RFCs that govern these. These modules are interesting in that they are informative, but fairly incomplete in the information they relay, a good example of this might be when he starts referring to ports and protocols he doesn't differentiate which transport protocol the application form protocols are traveling over, despite discussing the differences between the TCP and UDP transport protocols. In this chapter you are shown you how to get in touch to arbitrary TCP ports, which could be helpful for banner grabbing. The past activity in this module shows you how to listen to a TCP port and thus create your personal arbitrary file server, however these lack really any security controls.

With Advanced Python he covers ctypes, regular expressions, multi-threading, and finally fuzzing. The multi-threading exercise in this module is pretty interesting, but nevertheless nothing really advanced, just a quick launching of multiple independent threads (vs something that's to think about deadlocks). The fuzzing section is also pretty interesting as this can be quite a core Information Security technique, so I appreciate the videos for Slides part 3, jperry even alludes to a load overflow in this video. Unfortunately, he also says fairly uneducated things like fuzzing and password cracking are similar the theory is that (the manner of bruteforce may be similar, but that hardly scratches the theory associated with either subject) or that writing a code cracker is against the CFAA, which is obviously false as industry professionals use password cracking all the time in penetration testing (trafficking hacked information or the actual act of hacking another person's system is illegal, not writing a code cracker). In this module's activities he also writes a reasonably insecure file server implementation. I say it's insecure not because it allows you to arbitrary read / write to a whole drive, but because it uses no authentication or encryption to guard the communications, meaning anyone could trivially hijack your fileserver activities.

Packet Analyzer module is where things get really cool. In part two, jperry starts implementing an IP protocol parser and demonstrates bitwise manipulation to read exact fields from the protocol. This can be a pretty awesome tutorial for writing a network protocol parser in Python and something I'd truly call Python for Security Professionals. I recommend this section for anyone interested in finding a more comprehensive handle of protocols and automated parsers.

The Info Gathering module is also really interesting, as here jperry writes a quick post-exploitation RAT in Python for Windows. That is excellent and where in actuality the class really starts digginging to the Python put on security specific applications. I like where he uses python to parse the Windows registry key values, that is super helpful for various security applications. Overall, I do believe this is a very good Python for Security Professionals video. This module also covers the majority of the content from the Post Exploitation Hacking course in this script. I recommend this module for moderately experienced hackers looking to start writing their own implants.

Overall, the modules were well done and I appreciate the relaxed approach of the course and exercises. Nevertheless, I do believe the whole course is great for someone trying to learn Python from scratch, however in the event that you already are a newcomer Python / Information Security enthusiast you must checkout something more like Black Hat Python, and even although you are well versed with Python and Information Security you could find the last two modules interesting. As for Cybrary.it, I really appreciate what they're doing with free education, I do believe this is a superb program and it deserves a lot of support, however I don't think the certifications are worth anything go now, based on the lack of business-logic security preventing anyone from just acquiring the certificates and never having to have the courses.

Comments