Time
4 hours 39 minutes
Difficulty
Beginner
CEU/CPE
5

Video Transcription

00:01
here in lesson 5.6 isn't gonna be another fun demo it take a look at the contrast Community edition. I asked Tool,
00:10
Do you then demonstrated here that I've I loaded it into our job vulnerable app running in our Tomcat server.
00:18
And when I had scanned it with it with Iraqi and some zap that other tools I just want to kind of explain the I asked architecture while we're while we're running the demo.
00:31
So here's the the link. If you want to take a look at its contract security in their community addition. So it's a free one out there. We can run it against one server again. There's a limited number out there. And so I thought this was the best one just to kind of be able to run it. You can see how how it functions.
00:48
Thinking, run a quick demo of the contrast tool, the community addition that I have loaded
00:54
just to kind of give you example what it looks like and see what exactly the features are in here.
00:59
So I've already I loaded the I asked tool There, there, there, agent into our Tomcat server where the we put the Java vulnerable lab that free, vulnerable tool
01:11
and have it running in there and then hooked it up to the portal here. And then I ran some tools of the rain zap in Iraq, me and a couple, and then this is so this is what you're presented with. So I log in and see here. It's saying that my job vulnerable, vulnerable lab is my application.
01:26
I have an F score right now because there were so many vulnerabilities and it's kind of what we expect.
01:32
Um,
01:33
and it gives you again some some information about it. We'll talk about these later. I have the protect on and the assess here that protect is actually the rasp tool, which we have mentioned before. We'll talk about later module, but it's one little actually, actively block attacks I had just turned on later,
01:51
right now, but I had it turned off during the when I was doing the scanning.
01:56
They could take a look here first kind of look at some of the vulnerabilities.
01:59
So here it has 15 that it that it identified. There's a high one for a cross site scripting that can actually take a look at this. There's a lot more things you could do. You could label it. You could send it off. You can delete it if you don't want that vulnerability. But who wanna drill down a little bit into it? So that actually show it says
02:19
so that it will give you
02:21
from the application. Here's where I saw. I see it is ah, search dot jsp has this cross site scripting vulnerability
02:29
give you some additional information was detected, last detected to see what's attached. Lee uh, still there or whether it's an old one and they'll actually So you here. So he saw
02:39
the issue. Was is the key words he started. You see, this was the SAP tool because it puts its information in there and I give you some. Here's what we tracked the keyword parameter, which was access for the following code on the line. 21 to it actually give you in the jsp sits again. It's running similar to a SAS tool to a connection since the
02:59
the applications running or it's running within the application, it could actually see the source code
03:04
versus a dash tool, which would only be able to say I saw this results. We couldn't track it. So you can actually track it around to the JSP, which normally wouldn't be able to see from an external perspective
03:15
you give you a little bit further details here It says, I see http parameter and this is what happened. So they felt that distrusted are untrusted data. What's was sent back.
03:28
You can see this is a
03:30
cross site scripting because the data here it solves the words app come in here and then later on it printed Zap back out. So this is obviously a cross site scripting flaw because there was no filtering on it
03:43
again. You can see the full HDB info
03:46
on, then gives you some information how to fix it.
03:51
And then you can add discussions here. If you have multiple users or multiple people looking at that, you can identify or to talk about something together.
04:00
There's a there's another one here, just kind of look at it quick. There's a path reversal flaw.
04:04
This is one where it's all that this download dot GSP was requesting ah doc file here. Eso it. But it doesn't appear to be doing any filtering, which would allow.
04:15
Does somebody malicious to do like a dot dot Attackers have been like that on it
04:20
on then Here's gives you a little bit example of the code
04:26
and specifically where it was, where it founded and why this is an issue
04:31
again. There's a full if you're interested in a full session or request that it's all
04:36
and then they give you some information on how to actually fix it. So it is very useful,
04:42
especially for the developers
04:45
to go back here on the next feature is similar to the S ea that we that we looked at with the, um
04:51
um,
04:53
the wasp dependency check.
04:56
The, uh, the contrast tool can do that as well, so you can see here. It says I. Since it's already loaded, it's running in the application server. It can see what libraries are loaded. So it says, I see you have a Commons collection job jar file. I could see the version you're running here is the latest one that's out there. And then
05:13
it pulled down from the N. V D database. All these TV ease that are related to that and then checked by the version and so we could see
05:19
this one has a vulnerable has actually three vulnerabilities.
05:24
It sees this. This other library has one. And then the my sequel connector that's being used to connect a data base. S u has six vulnerabilities as well.
05:33
So this is Ah, Well, take a look just real quick at this, So if you drill down on this commons collection dot jar, then it'll actually pull it out for you. So you can read the Athi. C E V e's here. Just want for 2017 2015.
05:46
Um, you get the CVS s score as well. You could take a look at these to see how bad this is on how much effort you need to put into fixing this.
05:57
Uh, you drill down to these other ones, but then what was interesting? So you can see all the other libraries that are loaded in here as well,
06:03
so you can see which one. So you know which ones are are part of the application and which ones it scanned.
06:10
They just want ah ah, pop up a screen here in a minute to compare the dash scanning That was done. I'm sorry. The death the S E a scanning that was done with the O wasp dependency check tool versus the job. Vulnerable lab. I saw a couple different or issues here
06:29
where I saw, um, we'll bring it up, but it looks like
06:31
the the Dom this Dom library was noted was flagged by the OAS tool, but not flag here as having a vulnerability.
06:41
And then the contrast tool had somewhere it found,
06:44
uh, one of the libraries that had more vulnerabilities, that then associate here. So this is a good idea or talking about how we want our own multiple tools that have some overlap and discover because they may not be perfect or may 1 might be actually be a false positive. We're not really sure. So you want to kind of bridge that gap?
07:04
I have a question. Why run? Dad asked and I asked tools both within your environment
07:14
to the I s can confirm results that you were running with it with a dynamic scan or so
07:18
you run it and you could see vulnerability and you get and you run and I asked Tool that you can see that you didn't really get a good idea of what? Uh what what? The tools both tool saw whether they are actual vulnerabilities
07:33
and so that the issue with the dash to if you're only running that
07:38
you may not, you may get a false negative or really, you wouldn't get any results. You wouldn't know that there was a vulnerability within the application.
07:46
It may have been expecting some specific result to come back.
07:49
Whether was crosscheck scripting Whatever it was, it may have
07:53
seen it, and it formatted the text in a way that got through and would have been reflected back. But somehow it something was messed up with encoding or something like that. So I didn't get back what it was expecting. And it may say, like, I didn't see anything so that this is not a vulnerability versus the I s tool sought Come in.
08:11
So I go out and it would say this is a cross site scripting
08:13
again. So you would have got a false negative or may not have seen anything at all
08:20
since I mentioned here is ah, done a script split screen that
08:24
just to kind of show the differences. So I mentioned in the when we're looking in the eye as tool the vulnerabilities that were found in the Web library. I'm sorry the third party libraries have done here is at the top. I have the I as tool, the gooey and then
08:39
over laid on top of the bottom. Here is from our zap tool that we ran in the Jenkins pipeline. Just we can kind of compare the two.
08:48
So looking at the highest tool found three CV ease in the Commons collection and looks like the dependency check found them as well. If I saw three here,
08:58
the interesting part that I found here is that in the Dom library,
09:03
these at the dependency check tool found one and it really it says it's a high. It's just related to see ve 2018 vs in the eyes tool. It did not flag that. So that is one interesting delta between the two. And I didn't want to drill down that into to see what the issue is, whether it's a false positive or just
09:20
a tool are one that couldn't be found.
09:24
And then the let's see the Standard Tags library found. One contract found one as well, so that one's good The other discrepancy here between the two is the in the eyes tool, the for the associated. My sequel database connection. It found it found six associated si ves
09:43
versus the dependency Check tool found. Five.
09:46
So that's another one kind of
09:50
identify. What's the difference areas? Is it? Ah, just an error that the one tool couldn't find it Or is it a false positive? So, again, this is This is the value and running two different tools and finding that overlap. Those Delta's to really drill find every vulnerability that's out there.
10:07
We looked at the demo. The tool hope we found enjoyable, I think is really interesting to see the code running within the application like that and being able to identify almost like a bridge or a combination of a sass and the deaths tool.
10:22
Next, we'll take a look at the def sec ops maturity model from a WASP specific to the delivery censuses. The phase we're working in right now.

Up Next

DevSecOps Fundamentals

DevSecOps certification training helps students learn to incorporate security features in every step of the development process and navigate distinct security challenges in custom software and web applications.

Instructed By

Instructor Profile Image
Philip Kulp
Instructor