In this episode,
we're going to cover the wonderful world of programming languages.
Now, I've got some really great news for you.
You do not need to be a programmer to pass the CYS A exam.
However,
you need to know the differences between each programming
languages so that you can actually pass the exam.
So even if you hate programming, probably as much as I do, you're OK,
we're gonna get through this together.
We're gonna hit each of them side by side one at a time
and we're gonna go through them very clearly and very concisely as we move
cys A exam requires you to understand
the differences between the program languages,
but they don't expect you to learn actual programming.
And this is a good thing because if you're like me, you hate programming,
programming languages are essential for customizing and
identifying the different aspects within your network.
From a automated perspective,
we can use programming languages for basic scripting,
we can use them for automating different tasks.
We can actually go into the command-line
interface and change different aspects of our coding
as we move through now. Just because we can, doesn't mean we always do.
And this is where understanding the
programming perspective really comes into play.
Remember cys A is looking from a perspective that you understand programming,
not that you actually do the programming.
And this is good from a perspective as an analyst because as an analyst,
you need to understand that if I've got a
problem with the specific software or a web application
that you should understand the basic principles to go to your developers
and say this isn't working and I need it to do this.
I would look into the specific library or the specific aspect of the program.
You should be able to identify the differences between XML and say JSON, Python,
powershell and shell script and have semi intelligent conversation
with your peers when you're discussing programming languages.
But again, you don't need to program to pass your cys a exam.
I know that this topic makes a lot of people nervous,
especially in the it when they have a background specifically in it.
I'm telling you right off the bat,
you do not need to know programming at an indepth level to pass the exam.
But you do need to know the differences between
the different programming languages as we move through.
The next one I want to talk about is extensible markup language or XML.
Extensible markup language serves as a markup language for encoding
documents in a format readable to humans and machines like
it's used in web development,
particularly building in soap or simple object access protocol applications.
And XML documents are structured with elements that close in
opening and closing tags making it easier to read.
This includes attributes which provide additional element information that
you may see in the slide that we provided.
You.
You can often find XML commonly utilized for exchanging threat intelligence
information between various security tools and platforms like our seam.
For instance,
the structured threat information expression or stix language is relevant,
representing and sharing cyber threat intelligence
and employs XML for data formatting,
numerous security tools like seams and thread
information or intelligence platforms rely on XML
represent an exchange threat intelligence data and
this facilitates a seamless integration of sharing across
systems. Next is
json or javascript object notation. Now, JSON is a
little bit different from XML because it offers simplicity and adaptability.
Make any more favorite choice in various applications.
Json encapsulates key value pairs and closes braces
which you can see on our screenshot here.
This provides us values depicted as strings, numbers, arrays or objects.
Json doesn't have a formal schema and it's structured informally and
governed by data models specifically with elements types and structures.
It plays a significant role in facilitating data
exchange and storage across diverse systems and platforms.
Python is perhaps the most notable one that you'll find in cybersecurity.
It's highly versatile programming language employs a
widely used for cybersecurity and scripting automation,
data analysis and machine learning.
You should understand Python,
Insomuch that it goes through the processes of
programming by providing a very lightweight structure,
meaning that it's easy to program in Python than in a in
Java or C or pretty much any other language out there.
Python finds extensible use in vulnerability scanning malware analysis,
network reconnaissance, web application, penetration testing
and of course, data analysis, it's rich for set for built in libraries like
and beautiful shop, facilitates automation
and data retrieval for
our sources.
As a cybersecurity analyst,
you should understand Python probably more in depth
level than you understand the other ones.
And if you don't, I'd recommend taking a course on it when possible.
Python is somewhat easy to learn and provides
us a really abundant use of different programming
in a language that is sometimes used in a
lot of the other programming that we see available.
Next, I want to talk about powershell.
This was developed by Microsoft as an object oriented scripting
language designed for automating and managing a windows environment.
We can see powershell, not just a windows environment,
but most notably in New Windows or Linux environments
as well as they start to move forward with
the idea that powershells is something that we should
see or utilize on the world of cybersecurity.
Powershell, facilitates various tasks like system administration,
network configuration
and task automation.
A key strength of powershell is the
seamless integration with the windows operating system,
allowing for an interaction with the system components
like the registry file system and network powershell
scripts can also engage in CAL objects or
net classes or even other powershell scripts,
making it somewhat versatile for both administrators but Attackers as well.
In the Unix or Linux environment, we often
see something called a shell script.
Now,
shell scripting involves creating scripts using command-line shells like
bash tailored for the execution of the operating system.
These scripts are streamlined for repetitive tasks such as system maintenance,
file manipulation
and process control. As you're reading through this slide.
I want you to pay attention to the fact that the very top left hand side,
you can see bin bash on there.
This is indicative of a Linux bash or shell
script.
Don't worry, you might actually see a question on your cys A that makes you identify
the type of programming available in this aspect.
If you just look at the top left and you see bash, that's the answer.
It's shell scripting. Finally, there's Regexs or regular expressions.
This is common as they serve a text processing and facilitating the search
of specific patterns within data sets like log files or network traffic.
We can use that to analyze efficiently and extract information ranging from IP
addresses to RLS and they enable identification
of potential security threats and incidents.
However, in practice,
reject is often integrated with scripting languages like Python.
In order to automate various text processing and analysis tasks,
this often enhances operational efficiency and
Scalability within a cybersecurity environment?