So this is weapons. Fact. When you actually open up the product, this is what you're going to see. You can see we talked about guided scans, basics gains, enterprise scans, things like that. All that's gonna be listened over here on the left.
There's gonna be a list of the scans I have recently run.
All right, if I want to see all the scans that I've ever run, I could just go to the manage scans. Option c, all those I could delete scans reopen them, things like that.
All right, So what we're gonna do here is we're gonna start a guided scan first.
All right? There's gonna be some options. Create a standard. Websites can quick scan thorough web scan, mobile scans, things like that. I recommend that when you run weapons back, you run it against a web application in a testing environment. All right. Weapons beckon have unpredictable results on your application,
so I would not run it against a production system.
It was You know what you're doing? You have to run it against a production system or you've tested that particular application in production previously. Did you say, even if you are I always recommend a complete scam production.
That way you can turn love, inspect up to full capabilities.
What you're really worried about is persistence and the persistence of bad data or test data in a production system that will anger your customers or the people that you are internally testing. If you start filling their database up with junk or just functionality of the application and still think about,
they have an administrative section
about Web application that allows you to add users to delete users.
Weapons duct is going to click those bosses at user's gonna delete what you tell it. Not unless you tell it not so that first time you're running a scan specifically, if you're not familiar with complete functionality of the application of likely, that is, you will do some pipe.
not damaged. But you will delete the user of public confidentially that Evans is using our cause. Some kind of havoc. They're leaving leftover way, are simulating attacks. So with dynamic analysis, we are throwing an attack. Now we're trying to do it in the least harmful way,
but it is still Java script is still data that if you're right into a data baseball percent,
being able to take advantage of the full capabilities, the scan and then tailoring. And that, too a non persistent scan if you have to do it in production, which many people do, but they just don't start
the other thing. We'll talk about this a little bit more there. Two phases toe scan, the crawl in the audit. The crawl is much less destructive for lack of a better term than the audit. So if you are scanning a production system, run the crawl by itself first and then look at the results and make sure that
everything that weapons by found you actually want
to test. We've had numerous people where we've run weapons. Buck scans and I came in to talk to the next day, and Web inspect found portions of their website. It was not supposed to be ableto find, and as soon as it finds something, it will test it. So just because something's not supposed to be accessible,
it doesn't mean that it won't get tested.
so we're gonna go ahead and create a standard Web site scan.
All right, so you can see here.
Basically, it's going to ask us
for the start. Earl s O. This is a website I have running on my actual laptop. If I want, I can click. Verify.
All right. So that just verifies that yes, weapons, but can actually get to the website that I'm trying to test. All right,
now we quick the little arrow to go to the next step.
All right, so here is gonna ask. Alright. What type of scandal I want to run a standard scan means a Web inspect is goingto enumerate the website itself. It's going to try and find all the pages and sessions and form fields and things like that. The other option is a workflow where I can actually walk weapons back
and show it where everything is. It will still spider out from there a little bit, but it's a much more directed scan.
And then, like it said, every scan has two portions, the crawl
and the audit. By default, we're going to do them simultaneously. So Web inspectors multi threaded. I can allocate how many threads I want for the crawl on the audit. But as soon as it started the crawl and it's found some of those sessions, it's going to start auditing them.
This is the fastest way to do a scan, because I can do both at the same time.
The two reasons I would not do it this way is I'm scanning a Web site that never scanned before, and I want to be certain that I'm not gonna end up auditing part portions of this site I don't wanna audit. In that case, I would do the crawl on Lee. The other reason is for troubleshooting purposes. If I'm having a lot of problems with the scan,
it's easier to run the crawl on Lee
Single threat it. So I can really see what's going on as it's going on and then run the audit. If I run the crawl in the audit together, I think by default there are 12 or 14 different threads that it uses. It can be very difficult to keep track of exactly what's going on,
The next important piece of information is the policy. The policy dictates what types of audits are actually performed. The default is standard. This is what I would recommend if you're running a scan against the site in a testing environment,
all right, and you can see there's a description. A standard scan includes an automated crawl. The server performs checks for known and unknown vulnerability. So is checking for CW Ease and C E. V E's at the Web server, Web application server
and Web application layers. So there are some checks that it's going to run
to check my you know, Apache or Tomcat, or I ask for things like that. But the majority of the cheques, they're gonna be targeted. The actual Web application itself. All right there. Other policies. If I only wanted to check the Web application, I could choose application,
and that would eliminate the checks at the for the application server.
All right, if I only wanted to do critical zone highs, I could do that. Be aware. There are things that weapons back finds that are listed in the APP. Stick policy is critical cat ones and cat twos. They're not critical in high finding, so you probably want to run a standard scan.
A lot of people will also run the loss
Top 10 scans as well.
That's something that most developers are familiar with. You know the standard set of findings.
And then if you really wanted Thio really test something could always do all checks that runs off the checks. All right, so we're just going to use
and then the last selection is the crawl coverage. This is how much time and effort Web inspector is going to spend finding all of my website eso. One thing that you have to think about is a human being. You know, I look at I go to a address page on a website.
I think of that. As you know, one page of one form
weapons back looks at it differently. It's sessions. So if I find in a dress page in my website that address pages probably gonna have a state drop down, that state dropped down is gonna have 50 or 60 different values. Web inspect will test each one of those so it will do a submission for Arkansas,
when you select a crawl coverage that determines how many of those it chooses. So by default, I think it's 10. But I could change it, so I could say, Well, if you find a drop down. I only want to check three of the drop down values or I want to check all the drop down values.
You know, it's unlikely that the test results for Arizona would be different than Arkansas, but they might be.
It all depends on how comprehensive how you want it to be. Crawl coverage also determines laterally how much movement there is across the Web site,
and you can either set that by hand in the configuration settings, which will show you or you can just kind of choose thorough
All right. This also between the policy that you run on the crawl coverage is gonna have a major impact on how long it takes to run the scan. It is not uncommon for weapons. Spect scans to take hours, six hours, eight hours, 10 hours. That's something that we can control
by changing the crawl coverage and the policy.
It's probably a good idea. Have a general idea of how large the website that you're testing is before you start running the test. Ah, word of caution if you start testing websites have a lot of content in them. Ah, content management side to SharePoint site things like that.
You're probably gonna have to tinker with the scan settings or the scan will run for days
because it will find, for instance, a calendar page. And I'll check every day of every month of every year.
Or it will find a Oh, a section that was images and you might be 10,000 images in there and try and test all.
then it's gonna ask us, All right, Do we want to run an authenticated scan or unauthenticated scan? And a nothing indicated scan means that weapon's spec will Onley scan the portion of the website it can get to without logging in the key phrase, there's it can get to not the portion of the website you think it can get to,
but do directory listing and randomly
guest pages and things like that. And if it can get into a portion of the site without logging in, even if that portion was supposed to require logging, it will still scan it. A authenticated scan is gonna ask for
privileges. We can either do that using a macro or certificates or attack or something like that, and that's going to allow it to actually log into the website.
eso I've already recorded a log in macro, which is what I'm going to use. I'll show you how to record a macro in the actual next skin that we run.
there's a profiler. The profiler is basically going to go out to the Web application and I will run this all started so you can kind of see what it does. I'm not gonna do the entire thing,
but it's gonna fingerprint the server. So it's going to try and determine what type of love application server I'm using because there's certain checks that we run that are only relevant to certain types of servers. So we know what type of server you're running. We're not gonna run those sorts of checks. It might check the SSL certificates. Is they just asked
to know whether we need to make adjustments, things like that
s so you should probably run the profiler because it gives Web inspect a better idea of what type of scan you're trying to run. And then when it does that, it will come back and actually give a suggestion that will say, Well, I profiled your site and I noticed that you're using this framework or this type of application
or something else. You know, Do you want to change your configurations?
So the site I'm testing Web expect actually has knowledge off that particular site. So it came back and said, Hey, do you want to use the can settings for this application? I don't,
uh, but that's something that it would come back and ask me.
Okay, now it's replaying my macro to validate that my log and macro actually works correctly. Now it's asking me to enhance covers. So, like I said, by default, Web Inspector is going to crawl the Web site and try and find everything that it can.
If there are certain portions of the website that I know, Web Inspector isn't going to be ableto find, or I want to make sure that it finds I can identify those right now
so I might go in here to transfer funds. All right, I might go thio, find locations. I might do a couple other things just to be sure to make sure that that actually gets tested is part of the scam.
You can also run the actual test through a proxy if you want. One thing to keep in mind is if you are having a scan that isn't functioning well, one of the things support may ask you to do is actually run the scan through a proxy so that you can look at the proxy log. That's an easy way to see what Web inspectors
I would recommend that when you run a scan, you also enable the traffic monitor that will allow you in real time to see what weapons back is actually doing.
All right, then what I can do is if I wanted to, I could save all my sudden and this would allow me the next time I have to run a scan, I would have to go through this process again. I won't have to configure it. I would just open up my safe configuration and running a new scan.
If you need to run a new skin, you could also just open up the original scan
and rerun it. And it would reuse the settings as well. So you could do that either way,
And then we'd actually start this game.
All right, down here at the bottom,
you can see the status. So it's initializing right now,
all right. And over here, you can see there the little graphs of my network traffic in my analysis.
All right, you can see that my scan has started. You can see it's going to start building out the site tree over here. So this is a list of the sessions that it's crawled and audited. All right, remember, there are two phases. There's the crawl, and there's the audit, So I've crawled 126 pages of 389.
These numbers are going to change very dynamically because it's very common. When I crawl a page,
I'll identify eight other pages that I then need to crawl as well, and it just adds them to the queue of what to be crawled. Because we're running the crawl in the audit simultaneously. You can see it's already auditing, so I'm done 14 of 592 audits. You can see that's dynamically going to change as well.
is much more time intensive and computational intensive than the crawling, so you can see the crawling here is almost done. It'll be a while before it finishes the auditing. This bar up here, there's a dark green section
in a light green session. You can see the dark green or basically sessions or requests that were successful. All right, the light green are things that weapons back attempted to crawl that were rejected. So, like I said, there are certain pages it'll guess based on your existing, your l's
or known admin pages or things like that. There's some amount of randomness
to the actual process.
You don't have to go, so my website are actually mother called another one.
So you can see right down here. There's an excluded host section, so it will
but it won't actually go to that third party site. Now if I want it to go to that third party site, I can list when I do the configuration for the scan. Additional u R l's that I want weapons back to Testa's well.
Or if I wanted one of the other advantages to doing the crawl before the audit
is, If I do the crawl first, I could then go into the excluded ones and right click on them and allow them. When I do the crawl in the audit simultaneously, you can't really make changes to the scam because it's actively running. So although I could change some of the configuration items, well, the skin is running.
There'll be a warning that came up. This is Don't do this
because we can't guarantee the configuration changes. Lot should be accepted or have the desired effect on the actual skin. So you can see over here crawled, audited. There's a list of the actual findings down here by default. They're organized by severity and check.
All right, And then here's our site Tree
All right. And I'll go through all of that in more detail when we actually talked about doing the actual audit itself.
And then I think the one area that you can't see because the resolution is the actual scan details. So it tells us. All right, you know, we're running a scan.
Is the web inspect agent installed on the site that we're actually testing it? ISS.
All right. How many audit sessions do we have? Issues? Network traffic. You know, those sorts of things. Those are all listed over here on the right.
And then the other item you remember that I turned on was the traffic monitor.
Well, go ahead and pull that up real quick.
And this basically shows you what Web inspect is doing
at any point in time.
So if I scroll to the very bottom here,
so that's the current request.
You know, if you ever have a concern that weapons fact is hung,
what you could do is if you just scroll to the very bottom of the traffic monitor and highlight that item and then just see whether other items are being added in after the one that you highlighted.
All right, so you can see right now it's actually moving along fairly rapidly.
So I'm actually gonna pause this scan because I have a completed one.
The other thing, you can d'oh. Especially if you are scanning a Web site that requires CAC authentication. Obviously, you are supposed to be physically present when you're using your cat. So if at the end of the day your skin is still running and you need to remove your card and go home, you can pause the scan, go home, come back the next day we start the scan.
If you wanted to, you could also
export the scan. Well, it's in pause mode imported into another machine. And then restart the scan. We've done that. Sometimes. Occasionally there'll be someone who doesn't work every day of the week. They started a scan. The skin wasn't done when they went home.
They want their coworker to finish the scan when they come in the next day,
we paused it. We export it. We imported into the other machine. They started the next day
card. We weren't able to get a soft certificate used for authentication. You physically have sticking Common access card. Common access card reader. Obviously being a positive end of the day is preferred. Yes, that person having a lot of their car
get lost. You like sleeping at the office? I mean, that's the tithe
you could eat off. Indication supported. I'm tired. What time you'd be? I'm not.
Are you? I'm not from there. With it is you know what? It's based off of our I'm not sure of the protocol, but I know that you're this come together. So we support network off Indication and remind me there'll be a section where I go through the the scan settings. There's an entire authentication section, and I'll show you what the options are there. And maybe
that'll enlighten. Whether
that supported or no, it seems like just looking at quick dunes quick Google food. It's like a two factor authentication so but after digging exactly what the second factor is, But if it's gonna require a text message or email,
obviously what we would need that information to be able to authenticate the Web page. But way should be able to record a normal log in macro
through the weapons, that browser wait for our access to appear via phone.
Whatever you be, you know, uses.
Let's go ahead and take a look at that. So now we're gonna run a basic scan just so that you have an idea of what the difference between the guided skin and basic scan is.
We'll scan the exact same website.
All right, we'll do the call in the audit.
Here's the site that we're gonna test.
All right, if I want to do this is something I didn't show you earlier. I could restrict this.
All right, if I only wanted to. Do you know the directory I started out of the folder and the subdirectories? I could Sometimes if you have very large sites that you need to scam people will break them up into sections, and you might have to use that option.
All right. And then for here, I'm actually gonna record the log in macro. So I'm going to cite authentication. I'll show you how that works.
All right? So it basically goes to my website
and asked me to log in.
And this uses the true client recorder, which some other HPD Testing Tools USA's. Well, that gives me a lot of flexibility. If I wanted to, I could actually create a log in macro that prompted me for the user name and password. All right, so if I'm testing the same side of multiple different machines,
all right, the user name and password change, or if I want to run a test with different user names and passwords because of the
the role based security and what they have access to, I could do that as well.
All right. Once I've logged in,
I could stop. Do not log out before you click. Stop. Just quick. Stop.
All right, then it's going to replay my log in
to validate that it actually works correctly,
actually know what I'm going to need to do here.
now it's saying, Do you want to select an object on the display Web page to indicate whether your log in or logged out and the reason it's asking me this is weapons back? Needs to know whether it needs to rerun the Web macro to log in
because occasionally certain tested, it might run. Mike clobbered the session, and we'll have to run her log back in.
So it's asking for a visual cue. How do I know whether I'm logged in or I'm logged out?
And then I'm basically say, Well, if you see the sign off link, that means I'm logged in.
Now it's checking to be sure that confined the log out condition.
Alright, Everything worked.
All right, So now I could save this if I wanted to,
or if I just close it, it'll automatically save it for me,
All right? And inserted there.
All right. And then the same sort of options here. Call coverage. Audit Dept.
All right. Web form values allowed hosts. Someone was asking about if I had
additional u r l's that I wanted to include in the test. This is where I would add them in the allowed host section.
All right, I'm going to turn on the traffic monitor.
All right? And then I could say this is my scan settings. Run the scan. Start that. Same as the other one that we looked at. I'm not gonna actually run this scan, because it's exactly the same is the one that we were running before.
All right. So this is a scan that I kicked off that's actually completed. So the scan's finished.
This is what the results actually look like. All right. So what we can do now is you can see, you know, here's a list of what was called what was audited. Critical, high, medium and low. They're basically two ways of actually looking at the results. All right, one ways you can see this section down here. All right?
I can actually go through the information down here,
all right? If I click on the columns, it would re sort by that column by right click on the column.
There are additional columns. So, like if I actually was looking for C W ese, you know, that's a column I could add in. It would then be added, and I could sort by that I could also, if I wanted to copy this column up here, that would add it to the sword order.
I could do a search, all right. So, like, if I wanted to check for sequel injections,
I could do that as well. You can do various things that way.
The other way I can look at the results is through the site tree.
All right, so what I could do is actually it's pan that.
All right, so let's see.
Hear, Ugo, Here's the log in page. You can see that little icon there that indicates that there's a high finding. One of the nice things about weapons back is it does have context sensitive help. So if I'm in this section
all right, and I cook F one,
it will actually bring up the help file for that section of weapons back. So I know I can never remember what the difference between the yellow folders and the great folders and the blue folders is So I go to, you know, the site tree, the navigation pane. Pull that site or that portion up
So here you go. Here's the icon. So blue folders is a folder that was discovered by guessing.
All right. Yellow folder is basically a folder that's actually referenced by somewhere on your site itself.
Ah, great folders. Basically, our path truncation,
icons critical. High, medium and low. So on and so forth.
Shortcuts, All that sort of thing is in there. So if you're ever in a portion of Web inspect and you don't know what something is, just go to that part hit F one. It'll bring up the helpage for that particular portion.
All right, So if I click on this finding
you can see here by quick on vulnerability,
that'll tell me what was actually found for this. Pay this session.
All right. I could scroll down. There.
Probably wasn't the best choice because there are multiple ones here. They're all be listed.
If I want to see the Web browser view off
log in page, I can click on that.
Like I said, the testing is request response base. So if I want to look at all right, what did weapons back to actually send to my website as part of this test and or session?
All right, here's my response.
That portion highlighted in red in the response.
That's how weapons back knew that this particular item was successful.
that indicates that all right, it was trying to do something, and it was actually able Thio manipulate the website to get it to do what it actually wanted.
Details for the actual request
steps. So if you actually wanted to try and reproduce this, these air, the steps that you go through to get to this portion of the website to reproduce it.
form, values, attachments, attack info, things like that.
All right, so all of that is available here.
The other thing I could do if I wanted is if I double click on the actual finding in the bottom section here,
it will bring up a separate page
that has all of that information in it. So you can see here is the browser view.
Here's the request view response,
a description of the actual vulnerabilities
attachments. I could actually go in and add notes. I could add a screenshot. I could add comments. I could do all sorts of things there as well. I would also be able to mark this is a false positive or just ignore this particular finding.
All right, I'd be able to push this into my defect tracking system if I wanted to, or I'd be able to retest just this one particular finding so you can retest either all of the findings. For a scan, you can re run the entire scan, or you can retest just this one, finding all right C of multiple options there
real world where time is limited and you have certain issues that have been flagged with certain levels of importance. Right? You have to test the specific issues before specific authority to operate
on a T. I was granted. So I use that all the time toe specimen to test a subset because we always
really the limiting factor typically would application security is labor.
I never have enough people took run all of this game that need to be performed so being as efficient as we can with our time,
are the other thing we could do is there are multiple views for the site. So there's the site view. So this is gonna list it based on the site tree, More or less.
There's the sequence view. This is gonna list all the findings in the order that they're they're actually conducted by weapons back.
All right, or there's the search view. So someone mentioned before? All right. I want to see whether Webb inspect was able to get into the admin section of my website. All right, well, I'm gonna do a search
Bradman. Alright. Well, these
You know, the contained the word admin in the euro s. So it was I'd be able to look at these and figure out, you know, these are actually all admin. Page is not folders, whether it actually was able to find that session. So I just said there's a search view
so I can go down to search. Let's say that I wanted to see all the findings related to Social Security numbers being publicly disclosed.
You can see here are the search options. I'm gonna go to response raw
type in Social Security number that list all of the tests that resulted in SS and being in the response. You can see there are a couple here that actually have vulnerabilities,
so I could click on one of those.
Then I look at, you know, the Web browser view.
There's my cell security number.
again. You could see section highlighted in red. That's how it knew that that particular vulnerability existed.
Then let's go ahead and find one of these command injection. So if I open this particular finding,
you could see this one
because I actually used the Web Inspect Agent was installed on the server. This particular finding actually has a stack trace. So that's one of the benefits of using the agent eyes. We can pull a stock trace off of the Web server even if it's not publicly displayed, and provide it back to be embedded in the finding.
So in this case, when I went to the actual
developer to ask them to fix it, not only would I be able to say All right, well, look, you know, I went to
you know, this particular page, all right? And
I provided this information,
all right? I'd also be able to say, Well, the stock trace indicates here that you probably want to
I can't read it cause it's cut off. Go thio this particular page toe. Look at the source code there to try and figure out exactly what's going on,
And when I can also do, if I wanted to for specific findings, let's go to
I could also do what's called a step mon.
All right, which would allow me to goto particular part of the site tree and say, Hey, look, I want to manually add in additional sessions or checks so I can say start from there.
All right, It's going to start from whatever session I selected,
all right? And then I could say, Oh, I want to go here and I want to put in,
all right, And then that would be added to my site tree and would be tested as well