0% found this document useful (0 votes)
30 views

Translated copy of Translated copy of BurpSuite

Uploaded by

offsetbyte0x1
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
30 views

Translated copy of Translated copy of BurpSuite

Uploaded by

offsetbyte0x1
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 71

Burp Suite

Introduction

Getting Started

Burp Suite is an integrated platform for attacking web applications. It contains


many tools and many interfaces are designed for these tools to facilitate the process
of attacking applications. All tools share a powerful and extensible framework that
can process and display HTTP messages, persistence, authentication, proxy,
logging, and alerts. This article mainly introduces its following features:

1. Target (target)function that displays the target directory structure -a2.(-


aProxyproxy)intercepts HTTP / S proxy server that, as a browser and target application
Intermediate, allowing you to intercept, view, and modify raw data streams in both directions.
3.Spider (-aspider)web crawler using intelligent sensing, which can enumerate the content and
functions of the application completely. 4.Scanner (-anscanner)advanced tool, after execution,
it can automatically find web security holes inapplications. 5.Intruder-A customized, highly
configurable toolon web for automated attacksapplications, such as: enumerating identifiers,
collecting useful data, and using fuzzing techniques to detect general vulnerabilities.
6.Repeater (-a toolrepeater)that triggers individualby manual operation HTTP requestsand
analyzes the application response. 7.Sequencer (-a toolsession)for analyzingunpredictable
application session tokens the randomness ofand important data items. 8.Decoder (-a
tooldecoder)for manual execution or intelligent decoding of application data. 9.Comparer (-
usuallycomparison)a visualtwo items of data through related requests and
responses"differencebetween". 10.Extender (-allowsExtended)you to load Burp Suite
extensions and use your own or third-party code to extend Burp Suit the functionality of.
11.Options (-somesettings)for Burp Suite settings

testing
workflow

Burp supports manual web application testing activities. It allows you to effectively
combine manual and automated technologies, giving you complete control over all
actions performed by BurpSuite, and provides detailed information and analysis
about the application you are testing. Let's take a look at the testing process of Burp
Suite. The figure below

a brief analysis ofthe proxy tools can be Burp Suite a hearttesting process, it allows you to

browse through a browser applicationprogram to capture all relevant information, and lets
you easily start for further action, in a typical test The reconnaissance and analysis phase
includes the following tasks:
Manually mapping the application-using a browser tothrough the BurpSuite workagent,
manually mapping the application through the following link, submitting the form, and
strengthening through a multi-step process. This process will fill the proxy history(Proxy>
HTTP history)and the target site map(Target> Sitemap)and the contents of all requests by
passive spider(Spider)will be added to the site map, from the response of the application to
infer any further Content(via links, forms, etc.). You can also request any unsolicited
sites(shown in gray in the site map)and request them using your browser.
Perform automatic mapping when necessary-you can use BurpSuite's various methods
inautomatic mapping process. Automatic spider crawling can be performed on unsolicited
sites on the site map. Be sure to check all spider crawling settings before using this tool.
Use the content search function to discover(filter), which allows you to browse or crawl

the content links visible to further operations.Use BurpSuite Intruder(intruder)to perform

custom found circulating through the joint list of files and directories, and determines the hit.
Note that before performing any automated operations, it may be necessary to updateof
BurpSuite various aspects's configuration, such as target scope and session handling.
Analysis of the application attack surface - process mapping application historyfill in the
proxy(HTTP history) and the target site map(Sitemap)with all BurpSuite have captured
information about the applicationserver.These two libraries contain
features to help you analyze the information they contain and evaluate the exposure of attack
surface applications. In addition, you can use BurpSuite 's Target Analyzer to report the extent of
the attack surface and theused by different types of applications URLs . Next, I will introduceof
BurpSuite the various functions.first Proxy featureintroduced,because Proxyplay a cardiac
function, all applications are based on Proxy. the proxy function
Burp Suite key translation function buttons control
the navigation bar
Burp BurpSuite save state wizard save the state to restore state restore state Remember setting
remember to set restore defaults to restore the default Intruder intruder Start attack began to attack
the(blasting)Actively scan defined
insertion points
define the active scan insertion point
repeater repeaters new tabbehavior behaviornew label automatic payload positions
automatically loaded position config predefined payload
lists
predefined configuration payloadlist update content-length updates length unpack gzip / deflate
decompression gzip /abandoned Follow redirections follow the redirect process cookies redirections
in
in the redirection process cookies view view Action behavioral
function items
target certain proxy agent spider spider Scanner scan intruder intruder repeater repeaters sequencer
sequencer decoder decoder Comparer comparator Extender extension Options disposed Detach
separator filter filter SiteMap site map scope range filter by request type filtera request by intercept
intercept response modification response tomodifying match and replace matched and replaced ssl p
ass through SSL by Miscellaneous Miscellaneous spider status spider state crawler settings crawler
set passive spidering passive spider form submission submitform application login loginapplication
spider engine spiders engine scan queue scan queue live scanning field scanning live active scanning
site active scan live passive scanning sitepassive scanning attack insertion points attack the
insertion point
active scan tuning active scanning
active scanningareas active scan area optimization passive scanning areas passive scanning region
payload payload payload processing payload processing select live capture request for field capture
request token location within response
live capture options in real time capture options
manual load manually load analyze now analyzenow platform authentication
the responsein tokens position
platform certification upstream proxy servers upstream proxy server
Grep Extrack extract

proxyproxy
Burp is at BurpSuite theheartby interception, view and modify all of your requests and
responsesbrowser and the target web Passed between theserver. Let's learn about BurpProxy:
Using BurpProxy http,https
http to
set the proxy method: Take http ie as an example: Tools>> Internet
Options>>Connection>>LAN>>Check the proxy server and fill in the address 127.0.0.1 Port 8080
Here the port can be casual but the definition ofkeep burp listening to the same port and then to
save Proxy the Options to add add
such http listeneragreement onit,when the intercept is on it will indicate on
blocking feature, and vice versa

so on behalf of interception is successful, we can right-click send to Repeater to modify the


data before sending, you can right-click the submit a request to change the way(change
request method)such as get or post and other functions
https

1.run as administrator privileges ie browser, 2.as http as configuredproxy 3.Visit the


https address, click Continue 4.in the address barClick on the wrong certificate in this
address bar 5.Click on View Certificate 6.On the Certificate Path tab, click PortSwigger
CA,and then click View Certificate 7.On the General tab, click Install Certificate 8inthe
certificate import wizard, select"Placeall certificates in the followingstore"with trusted
certification Authorities 9.click Browse 10.The current user or local computer can
11.Click ok complete the import 12.to restart ie(no need to run with administrator
privileges) other browsers almost details, please see the official website
http://portswigger.net/burp/Help/proxy_options_installingCAcert.html

Intercept is

used to display and modify HTTP requests and responsesyour browser and the web
betweenserver.In BurpProxy's options, you can configure interception rules to
determine what the request is and the response is intercepted (for example, items in
scope, with specific file extensions, item requirements and parameters, etc.).
The panel also contains the
following controls:

Forward

When you edit information, send information to the


server or browser

Dropwhen you do not want to send this information can click on


the drop abandon this intercept information

Interception is on / off

button is used to switch on and off All intercepted. If the button displays
Interception is On, the request and response will be intercepted or automatically
forwarded. Configure proxy options according to the configured interception rules. If
the button displays Interception is off, all information after the display block will be
automatically forwarded.
Action

describes the action functions available for a menu of


action actions.

Comment fields

add comments to requests or responses to make them easier to identify in the


History tab.
Highlight

adds color to the request or response and can be more easily found in
the history tab and capture.

HTTP history

Proxy> HTTP history considers every request and response. Through the proxy can record
all requests()responsesand responses (responses). You can filter(filter)and
comments(commend)this information to help manage it, and use Proxy> HTTP history to the
testing process.History(agenthistory)always updated, even if you put Interception turned
off(interceptionclosed),you can also monitor critical details of the application traffic is not
blocked while browsing.

The History
Table

displaysthat have passed the proxy HTTP all requestsmessage, and can view the complete
request and response for any modifications and intercepted information you have made. The
table contains the following fields: # (request index number),Host (host),Method (request
method),URL (request address),Params (parameters),Edited (edit), Status (status),Length
(response bytes Length),MIME type (response MLME type of),Extension (address file
extension),Title (page title),Comment (comment),SSL,IP (destination IP address),Cookies,Time
(request time),Listener port (listening port).

You can sort in ascending or descending order by clicking on any column header. If you
double-click in the table to select an item address, a detailed request and response window
is displayed. Or right-click and select Show new history window
Display Filter

Proxy histroy has a function that can be used to hide certain content in the view to make
it easier to analyze and display filtering of the work content you are interested in.
History Table The filter bar above thedescribes the current display filters. Click the filter bar
to open the filter options you want to edit. This filter can be configured based on the
following attributes:

Request type
Show only in-scope items--Check to display items in scope, and vice
versa. MIME type
You can set whether to show or hidecontaining various MIME types, such as HTML,CSS
responsesor images. Status code
You can set whether to show or hide various HTTP status code responses. Search

termYou can filter whether the response does not contain the specified search term. You can set

whether the search term is a text


stringor a regular expression, and is case sensitive. If you select"Negative
search
(passivesearch)"option, and then search for words only items that do
not match will be displayed. File extension
You can set whether to show or hide the specified file
extension items. Annotation
You can set whether to use user-supplied comments or highlight items only.

ListenerYou can only display items received on a specific listening port. May be

useful when testing access control.


If you set a filter and hide some items, these are not deleted, just hidden, if you unset the
related filters will appear again. This means that you can use filters to help you
systematically study the history of a large number of agents to understand the various
request displays.

Annotations

You can highlight history items by adding notes and annotations. This may be useful for
describing the purpose of the different requirements and is marked for further viewing.
There are two ways to add highlights:
1)Use the drop-down menu in the leftmost table column to highlight a single item.
2)using thein the context menu can be highlighted"bright spot"One or more
selected itemsitem. There are two ways to add comments:
1)Double-click the relevant entry in the comment column and add or edit the in-place
comment. 2)Post a comment usingthecontext menu"Add Comment"one or more selected
items ofitem in the. In addition to the above two, you can also annotate items, they appear
in the interception tab, and these will automatically appear in the history table. When you
have stated your desired request, you can quickly find these items after using column
sorting and display filters.

Options

set proxy listening, request and response, intercept response,


match and replace,ssl, etc.

Proxy Listeners

are localthat listen for incoming connections from your browser HTTP proxy servers. It
allows you to monitor and intercept all requests and responses, and is at BurpProxy the
heart of's workflow. By default,Burp listens on thedefault 12.0.0.1 address, port 8080 by. To
use this listener, you need to configure your browser to use 127.0.0.1:8080 as a proxy server.
This default listener is required to test almost all browser-based web applications.
1) Binding
These settings control Burp howproxy listeners bind to the local network interface: Bind to
port ----This is the port on the local interface that will be opened to listen for incoming
connections. You will need to use a free port that is not bound by another application.
Bind to address ----This isthat Burp thebinds to the local interface IP address. You can bind
to just the 127.0.0.1 interface or all interfaces, or any specific local IP address.
Note: If the listener is bound to all interfaces or a specific non- loopback interface, other
computers may not be able to connect to the listener. This may enable them to initiate
outbound connections, from yourIP address, and to access the contents of the proxy server
history, which may contain sensitive data such as login credentials. You should only enable
this when you are on a trusted network. BurpSuite lets you create listeners for multiple proxy
servers and provides a wealth of configuration options to control your own behavior. You
may occasionally need to test unusual applications or work with some non-browser based
HTTP clients to take advantage of these options. 2) Request Handling
These settings include options to control whether BurpSuite redirects requests received
through this listener: Redirect to host - If this option is configured,Burp will forward each
request to the specified host without being restricted The target requested by the browser.
Note that if you are using this option, you may need to configure the match/replace rule to
rewrite the request in the host header. If the server redirects your request as expected, it is
different from a host header sent by the browser.
Redirect to port - If this option is configured,Burp will be forwarded to the specified port
every time without being limited by the target requested by the browser.
Force use of SSL - If this option is configured,Burp will use HTTPS for all outgoing
connections, even if plainis used for incoming requests HTTP. You can use this option in
combination with the SSL- related response modification options to conduct sslstrip -like
attacks using Burp, whereenforce HTTPS applications thatcan be downgraded to ordinary
HTTP traffic for the victim's user through the BurpProxy proxy. Note: Each redirection option
can be used independently. So, for example, all requests can be redirected to a specific
host while retaining the original port and protocol used in each original request. Invisible
BurpProxy support allows non-proxy aware clients to connect directly to the listener. 3)
Certificate
These settings controlof thepresented to the client SSL theserver SSL certificate. Using
these options can solve somethat occur when using blocking agents SSL issues: You can
eliminatefrom your browser SSL alertsand need to establish SSL exceptions. Where pages
loadfrom other domains SSL- protected items, you can ensure that these can be loaded by
the browser without having to manually accept theeach referenced domain proxy first SSL
certificate of. You can work withrefuse to connect to the server if they receive an invalid SSL
thick client applications thatcertificate. The following options are available: Use a self-signed
certificateself-signed----A simple SSL certificate is submitted to your browser and it always
causes an SSL warning. Generate CA-signed per-host certificate----This is the default option.
After installation,BurpSuite created a
uniqueself-signed certificate authority(CA)certificate, and will use on this computer, each
BurpSuite run. When your browser issues an SSL connection to the specified host,Burp
generatesthat hostby a CA ansigned SSL certificate forcertificate. You can install BurpSuite
the CA certificate ofas a trusted root in the browser, so that the certificate of each target
host is accepted without any alert. You can also export other tools or Burp other instances
ofusing CA certificates. Generate a CA-signed certificate with a specific hostname-this is
similar to the previous option. However Burp will generate a single host certificate towith
every SSL useconnection, using the host name you specify. This option is sometimes
necessary when doing an invisible proxy, because the client did not send a connection
request, so Burp cannot determine SSL the host name required for theprotocol. You can also
install BurpSuite the CA certificate ofas a trusted root. Use a custom certificate-This option
enables you to load a specific certificate (in PKCS#12 format) to present to your browser.
Clients that use specific server certificates (such as a given serial number or certificate
chain) should use this option if the application uses it. 4) Exporting and Importing the CA
Certificate
You can export your specific CA certificate for use in other tools or BurpSuite other
situations of, and you can import the certificate Burp for use in the current instance. You can
choose to export the certificate only (for importing the trust into your browser or other
device), or you can export both the certificate and its private key. Note: You should not
disclose the private key certificate to any untrusted party. A malicious attacker with your
certificate and key may be able to do it, even if you don't use Burp to intercept your
browser's HTTPS traffic. You can alsojust by visiting http: // burp / cert export the certificate in
your browser. It makes HTTPS request the same certificate from your browser, but when
installed on some mobile devices,devicevia a URL it is helpful for theto download it.

The Interception
Options

setting controls which requests and responses are stalled for viewing and editing in the
Interception tab. Separate settings are applied to requests and responses.
The"Intercept"checkbox determines if there is a message interception. If it is selected, then
Burp applies the configured rules on each message to determine if it should be intercepted.
Individual rules can activate or deactivate the check box to the left of each rule. Rules can
be added, edited, deleted, or reordered using buttons. Rules canon messages, including
domain names, IP addresses, protocols, HTTP methods, URLs, file extensions,
parameters,cookies , header/body content, status codes,MIME types, HTML be configured to
listenpage titles, and almost any attributes of the proxy port. You can configure rules to block
only the URLs of items that are within the target range. You can use regular expression pairs
to define complex matching conditions.
The rules are processed sequentiallyusing the Boolean operators AND andand OR
combined. These are all related to processing simple"left to right"logic, where the range of
each operator is as follows: (results accumulated before all rules) and/or (results of current
rule) all active rules The message is processed, and the result of the event rule is applied to
determine the background of whether the message is intercepted or forwarded.When the
"Automatically update content length"checkbox control, this has been modified by the user
whether Burp automatically updates themessage Content-Length header of the. Using this
option is usually essential when the HTTP body has been modified.
If required, you can automatically repair missing or redundant new rows at the end of the
request. If the edit request does not include a blank line below the title,Burp will
automatically add it. Ifcontains URL- an edit request with a body thatencoded parameters
contains any newlines at the end of the body,Burp deletes these. This option can be useful
to correct while manually editing the request in the interception view to avoid making invalid
requests to the server.
The Response
Modification

setting is used to perform modification of the automatic response. You can use these
optionsby automatically rewriting theapplication responds HTML the to accomplish various
tasksto. The following options may be useful in data deletion client controls: Show hidden
form fields. (There is a sub-option to highlight the unhide bar on the screen for easy
identification.) Enable disabled form fields delete input field length limit delete JavaScript
form validation The following options can be used to disable client logic for testing purposes
(note These features are not designed to be used as a NoScript way for security defenses)
useful: remove all JavaScript. Remove the<object>tag.
The following options can be used to provideto the victim's traffic without knowing it
through BurpSuite proxy sslstrip -like attacks. You canwith the listener option to forceSSL
outgoing requests to effectively stripfrom users' connections SSL use these together:
Convert HTTPS to HTTP links. Remove the cookie security flag.

Match and Replace is

used to automatically replace parts of requests and responses through a proxy. For each
HTTP message, the enabled matching and replacement rules are executed in turn, and any
applicable alternatives are made. Rules can be defined as requests and responses,
respectively, for message headers and bodies, and also specifically for only the first line of
a request. Each rule can specify a literal string or regular expression to match, and a string
to replace it. For the message header, if the matching condition is met, the entire header
and the replacement string match are left blank, and then the header is deleted. If an empty
match expression is specified, then the replacement string will be added as a new header.
There are various default rules to assist with common tasks - these are disabled by default.
Matches multiple-line regions. You can use standard regular expression syntax to match
multiline regions of the message body.
When replacing strings, groups can be used followed by index$references. So the
following replacement string will contain the name of the tag that was matched in the above
regular expression:

SSL Pass Through is

used to specify the target web server for which Burp willdirectly via SSL connect. Any details
about requests or responses over these connections will be intercepted in the proxy view or
history. Passing through an SSL connection canin this case where the client'scannot be
eliminated directly SSL be very usefulerrors - for example, inperform SSL mobile applications
thatcertificate pinning. If the application accesses multiple domains, oruseHTTP and HTTPS
mixedconnections, and thenvia SSL connect to the hostparticular problem can still allow you to
use the normal way Burp that
hetraffic work. If you enable this option to automatically addclient SSL items that fail
theprotocol, then BurpSuite will detect theon the client failure SSL protocol(for example,
becausenot recognized BurpSuite theis CA certificate of) and will automatically add the
relevant server to the SSL communication list.

Miscellaneous

controls Burp some specific details of the behavior of theagent. The following options are
available: Use HTTP / 1.0 in requests to server - This option controls BurpSuite whether
theproxy forcestarget server to be requested HTTP1.0 of the version. The default setting
isused by any HTTP to use the browserversion. However, some legacy servers or
applications may require 1.0 versionto work properly.
Use HTTP / 1.0 in responses to client - All browsers currently support both version 1.0 and
HTTP 1.1 .since 1.0 Some features have been reducedversion, forcing the use of 1.0 is
versionsometimes useful to control aspects of the browser's behavior, such as preventing
attempts to execute HTTP pipelines.
Set response header "Connection: close" This option may also be useful to prevent HTTP
pipelining in under certain circumstances.
Unpack gzip / deflate in requests - Some applications (usually those using custom client
components), compress in the request message body. This option controls BurpProxy
whetherautomatically decompresses the compression request body. Please note that some
applications may be corrupted if their desired compression body and compression haveby
Burp been deleted.
Unpack gzip / deflate in responses - accepted by most browsers gzip and compress
compressed content. This option controls BurpSuite whether theagent automatically
decompresses the compression response mechanism. Note that you can often prevent the
server from trying toby deleting the request (possibly using BurpProxy 's match and replace

function) with the Accept-Encoding compress the responseheader.Disable web interface at http:

// burp - if you have to configure your listeners to accept connections on unprotected interfaces
and want to prevent others from accessing the Burp This option may be usefulbrowser
controls.
Suppress Burp error messages - default when certain errors occur BurpSuite returns
meaningful error messages to the browser by. If you want to runin stealth mode Burp, the
performer is a victim of a man-in-the-middle attack on the user, then it may be useful to
suppress these error messages to cover up the fact that Burp is involved.
Disable logging to history and site map - This option prevents Burp from logging any
requests to the proxy server's history or target site map.if you are using a Burp It may be
usefulproxy for some specific purposes, such as authenticating to an upstream server or
performing match and replace operations, and to avoid logging incurred by memory and
storage overhead.
Enable interception at startup- This option allows you to set whether theduring Burp proxy
interception should be enabled. You can choose to always enable interception, always
disable interception, orfrom Burp's restore settingslast shutdown.

The
Target

tool contains SiteMap, which uses the details of your target application. It lets you define
which objects are in scope for your current work, and it also lets you manually test for
vulnerabilities.
Using Burp Target

www.baidu.com enter in the address


bar, as
thislooks like site map is not aa mess, you can right-click add toscope,then click the Filter
check Show only in-scopeitems,then you go back Looking at the Site map, there is only one
address in Baidu. Here filter can filter some parameters,show all to show all,hide to hide all, if
it ischecked, it means that no

action is performed on the address by right-clicking to show


some actions and other functions. On the left, right-clicking on
a file shows that you can currently perform some actions and
other functions.right
2 on the: Scope is mainly used in conjunction with the site
map to Figuredo some filtering functions, as shown in
the figure:

Include in scope is to scan the address or intercept history records. Right-click on an add to
scope to add to this, or you can manually add it yourself.

Target is divided into: site map and scope


two tabs.
SiteMap

Center Site Map summarizes allinformation Burp the relevanthas collected. You can filter and
label this information to help manage it, or you can use SiteMap to test the workflow manually.

Target Information

SiteMap is displayed in the tree and table in the target, and you can also view the
complete request and response. The tree view contains a hierarchical representation of the
content, with breakdowns into addresses, directories, files, andparameterized requests
URLs for . You can also expand interesting branches to see further details. If you select one
or more parts of the tree, the selected items and items in all child branches are displayed in
the table view.
This table view showsabout each item (URL , HTTP key detailsstatus code, page title,
etc.). You can sort the table by any column (click the column header to cycle ascending,
descending, and unsorted). If you select an item in the table, the request and response (if
applicable) the item is displayed in the request/response pane. This contains thethe request
and response HTTP editor ofmessages, providing detailed analysis of each message. The
sitemap summarizes all the information BurpSuite has collected about the applications. This
includes: All this is a resource requested directly through a proxy server. It has been
inferred that any items that respond to proxy requests through analysis (provided that you
have not disabled passive spiders). Contentusing Spider is foundor Content Discovery. Any
items manually added by the user, output from other tools.have been requested in SiteMap
Items thatare displayed in black. Items that have not been requested are grayed out. By
default (passviely scan this host)enabled with, when you start browsing a typical application, a
lot of content will be grayed out before you even get as much as possible, because
BurpSuite finds what you requested Link to it. You can delete addresses that are not of
interest

Display Filter

Sitemap can be used to hide certain content from the view to make it easier to analyze and
display filters for the work content you are interested in. Sitemap The filter bar above
thedescribes the current display filter Device. Click the filter bar to open the filter options you
want to edit. The filter can be configured based on the following properties:

Request type
You can only display items in the range, only with reactive items, or
requests with parameters. MIME type
You can set whether to show or hidecontaining various MIME types, such as HTML,CSS
responsesor images. Status code
You can set whether to show or hide various HTTP status
code responses. Search term
You can filter whether the response does not contain the specified search term. You can
set whether the search term is a text string or regular expression, and whether it is case
sensitive. If you select the"negative search"option, then only items that do not match the
search term will be displayed. File extension
You can set whether to show or hide the specified file
extension items. Annotation
You can set whether to use user-supplied comments or
highlight items only.

Annotations

highlight proxy history items by adding notes and annotations. This may be useful for
describing the purpose of the different requirements and is marked for further viewing.
You can highlight proxy history items by adding comments and annotations. This may be
useful for describing the purpose of the different requirements and is marked for further
viewing. There are two ways to add highlights:
1)Use the drop-down menu in the leftmost table column to highlight a single item.
2)using thein the context menu can be highlighted"bright spot"One or more
selected itemsitem. There are two ways to add comments:
3)Double-click the relevant entry in the comment column and add or edit the in-place
comment. 4)Post a comment usingthecontext menu"Add Comment"one or more selected
items ofitem in the. In addition to the above two, you can also annotate items, they appear

in the interception tab, and these will automatically appear in the history table. When you

have stated your desired request, you can quickly find these items after using column sorting

and display filters.

Scope

Target scope settings, which can befrom SiteMap addedor manually added to the scope.
You can set the target sitemap and proxy history to display only the items in the scope. And
you can set the proxy to intercept requests and responses that are only in scope.Spider
scans addresses within range. The Professional version can also be set to automatically
launch vulnerability scans for projects in range. You can configure Intruder and Repeater to
follow redirects to any URL in range. Send Burp targets to perform actions in an appropriate
manner, only for those you are interested in and willing to attack.
defined range using URL matching rulestwotables - a"comprise(the include)"list"the
exclude(exclusion)"list.Burp based on a URL decidesaddress. If it is within the target range,
this will be considered as if the URL matches at least one"include"rule, and does not meet
the"exclude"rule. In this way, a specific host and directory can be defined to be within a
general range and excluded from specific subdirectories or files (such as logout or
administrative functions) from that range.

Spider

Burp Spider is amapping web tool forapplications. It uses multiple smart technologies to
conduct a comprehensive inventory of the content and functions of an application.
by tracking HTML and JavaScript Mapping target applicationsand hyperlinks in submitted
forms, it also uses some other clues, such as directory listings, annotations of resource
types, and robots.txt files. The results are displayed in a tree and table in the site map,
providing a clear and very detailed view of the target application. It allows you to clearly
understanda web howapplication works, and allows you to avoid a lot of manual tasks and
waste time, tracking links, submitting forms, and streamlining the HTNL source code. It can
quickly identify potential fragile features of human applications, and also allows you to
specify specific vulnerabilities such as SQL injection, path traversal.

Using Burp Spider

To usefor an application Burp Spider requires two simple steps: 1 Use Burp Proxy to configure your
browser's proxy server to browse the target application(to save time, you can turn off proxy
blocking).
2.to thesite mapGo"target"option of theand select the host and directory where the target
application resides. Select thecontext menu"spider this host / branch"option in the.
You can alsofrom any Burp use the context menu to selecton any request or
responsetool"spider this item". When you send a sitemap branch to spidering,Spider will first
check if this branch is within the defined spidering range.如果不是,Burp 会提示你是否把相关的 URL 添加到范围
里。然后, Burp 开始 spidering,并执行下面的操作: 在分支上,请求那些已被发现的还没被请求过的 URL。在分支上,提交那些已被发现但提交
URL 错误的表单。重复请求分支上的先前收到的状态码为 304 的项,为检索到一个应用程序的新(未进入缓存)副本。
对所有的检索到内容进行解析以确认新的 URL 和表单。只有发现新内容就递归地重复这些步骤。继续在所有的范围区域内 spidering,直到没
有新内容为止。

注意 Spider 会跟踪任何在当前定义的 spidering 范围内的 URL 链接。如果你定义了一个范围比较大的目标,并且你只选择了其中的一个分支


来 spidering,这时 Spider 会跟踪所有进入到这个比较大的范围内的链接,于是也就不在原来的分支上 spider。为了确保 Spider 只在指定
分支内的请求上,你应该在开始时,就把 spidering 范围配置为只在这个分支上。
你应该小心地使用 Burp Spider。在它的默认设置上,Spider 会在 spidering 范围内使用默认输入值,自动地提交任意表格,并且会请求许多
平常用户在只使用一个浏览器不会发出的请求。如果在你定义范围的 URL 是用来执行敏感操作的,这些操作都会被带到应用程序上。在你完全地开始自动
探索内容之前,使用浏览器对应用程序进行一些手动的映射, 是非常可取的。

Control tab

这个选项是用来开始和停止 Burp Spider,监视它的进度,以及定义 spidering 的范围。


Spider Status

1)Spider running
这个是用来开始和停止 Spider。Spider 停止后,它自己不会产生请求,但它会继续处理通过 Burp Proxy 的响应,并且在 spidering 范
围内的新发现的项都会送入请求队列里, 当 Spider 重新启动时,再来请求。这里显示的一些 Spider 进度的指标,让你能看到剩余的内容和工作量的
大小。 2)Clear queues
如果你想改变你工作的优先权,你可以完全地清除当前队列的项目,来让其他的项目加入队列。注意如果被清除的项目如果还在范围内并且 Spider
的分析器发现有新的链接到这个项目,那么它们还会加入队列。
Spider Scope

在这个面板里,你能精确地定义 Spider 的请求范围。最好的方法通常是使用一套广泛的目标范围,默认情况下,蜘蛛会使用该范围。如果您需要定义不


同范围的蜘蛛使用,然后选择“Use custom scope(使用自定义范围)”。进一步的配置面板会出现在相同的方式套件范围的目标范围内面板
的功能。如果你使用自定义范围并向 Spider 发送不在范围内的项,则 Burp 会自动更新这个自定义的范围而不是 Suite 范围。

Options tab

这个选项里包含了许多控制 Burp Spider 动作的选项,如下描述。这些设置在 spider 启动后还可以修改的,并且这修改对先前的结果也是有


效的。例如,如果增加了最大链接深度, 在以前的最大链接深度外的链接如果满足现在的条件,也会加入到请求队列里。
Crawler Settings

1)check robots.txt
如果这个选项被选中,Burp Spider 会要求和处理 robots.txt 文件,提取内容链接。这个文件是由机器人排除协议控制的蜘蛛状制剂在互联网
上的行为。请注意,注意 Burp Spider 不会确认 robots 排除协议。Burp Spider 会列举出目标应用程序的所有内容,请求所有在范围内的
robots.txt 条目。 2)detect custom "not found" responses
HTTP 协议需要向 Web 服务器返回 404 状态码,如果一个请求的资源不存在。然而, 许多 Web 应用程序返回使用不同的状态代码定制为
“not found”的网页。如果是这种情况, 则使用该选项可以防止误报的网站内容的映射。Burp Spider 从每个域请求不存在的资源, 编制指纹与
诊断“not found”响应其它请求检测定制“not found”的回应。 3)ignore links to non-text content
常常需要推断出在 HTML 上下文里链接到特殊资源的 MIME 类型。例如,带有 IMG 标记的 URL 会返回图像;那些带有 SCRIPT
标记的会返回 JavaScript。如果这个选项被选中,Spider 不会请求在这个上下文出现的出现的非文本资源。使用这个选项,会减少 spidering
时间,降低忽略掉感兴趣内容的风险。 4)request the root of all directories 如果这个选项被选中,Burp Spider 会请求所有已确
认的目标范围内的 web 目录,除了那些目录里的文件。如果在这个目标站点上目录索引是可用的, 这选项将是非常的有用。 5)make a non-
parameterised request to each dynamic page
如果这个选项被选中,Burp Spider 会对在范围内的所有执行动作的 URL 进行无参数的 GET 请求。如果期待的参数没有被接收, 动态
页面会有不同的响应,这个选项就能成功地探测出添加的站点内容和功能。 6)maximum link depth 这是 Burp Suite 在种子 URL
里的浏览”hops”的最大数。0 表示让 Burp Suite 只请求种子
URL。如果指定的数值非常大,将会对范围内的链接进行无限期的有效跟踪。将此选项设置为一个合理的数字可以帮助防止循环 Spider 在某些种类
的动态生成的内容。 7)Maximum parameterized requests per URL
请求该蜘蛛用不同的参数相同的基本 URL 的最大数目。将此选项设置为一个合理的数字可以帮助避免爬行“无限”的内容,如在

URL 中的日期参数的日历应用程序。Passive Spidering(被动扫描)

1)passively spider as you browse


如果这个选项被选中,Burp Suite 会被动地处理所有通过 Burp Proxy 的 HTTP 请求, 来确认访问页面上的链接和表格。使用这个选项
能让 Burp Spider 建立一个包含应用程序内容的详细画面,甚至此时你仅仅使用浏览器浏览了内容的一个子集,因为所有被访问内容链接到内容都会
自动地添加到 Suite 的站点地图上。 2)link depth to associate with proxy requests
这个选项控制着与通过 Burp Proxy 访问的 web 页面有关的” link depth”。为了防止 Burp Spider 跟踪这个页面里的所有链
接,要设置一个比上面选项卡里的” maximum link depth”值还高的一个值。

Form Submission
1)individuate forms
这个选项是配置个性化的标准(执行 URL,方法,区域,值)。当 Burp Spider 处理这些表格时,它会检查这些标准以确认表格是否是新的。旧的
表格不会加入到提交序列。 2)Don't submit
如果选中这个,Burp Spider 不会提交任何表单。 3)prompt for
guidance
如果选中这个,在你提交每一个确认的表单前,Burp Suite 都会为你指示引导。这允许你根据需要在输入域中填写自定义的数据,以及选项提交到服
务器的哪一个区域,以及是否遍历整个区域。 4)automatically submit
如果选中,Burp Spider 通过使用定义的规则来填写输入域的文本值来自动地提交范围内的表单。每一条规则让你指定一个简单的文本或者正则表
达式来匹配表单字段名,并提交那些表单名匹配的字段值。可以为任意不匹配的字段指定默认值。在应用程序通常需要对所有输入域都是有效格式的数据的
地方,如果你想通过登记表单和相似功能自动地 spider,则这个选项会非常有用。在自动地把表单数据提交到广阔范围内的应用程序时,Burp 使用一组
非常成功的规则。当然,如果你遇到有自己需要提交的特定值的表单字段名时,你可以修改这些或者添加自己的规则。你要小心地使用这个选项, 因为提交
了表单里的虚假值有时会导致一些不希望看到操作。许多表单包含了多个提交元素,这些会对应用程序进行不同的操作,和发现不同的内容。你可以配置
Spider 重复通过表单里提交元素的值,向每个表单提交多次,次数低于配置的最大值。

Application Login

登陆表单在应用程序中扮演一个特殊角色,并且你常常会让 Burp 用和处理平常表单不一样的方式来处理这个表单。使用这个配置,你可以告诉


Spider 在遇到一个表单执行下面 4 种不同操作的一种: 1.如果你没有证书,或者关注 Spidering 的敏感保护功能,Burp 可以忽略登陆表单。
2.Burp 能交互地为你提示引导,使你能够指定证书。这时默认设置项。 3.Burp 通过你配置的信息和自动填充规则,用处理其他表单的方式来处理登
陆表单。 4.在遇到的每个登陆表单时,Burp 能自动地提交特定的证书。
在最后一种情况下,任何时间 Burp 遇到一个包含密码域的表单,会提交你配置的密码到密码域,提交你配置用户名到最像用户名的字段域。如果你有
应用程序的证书,想让 Spider 为你处理登陆,通常情况下这是最好的选项。
Spider Engine
这些设置控制用于 Spidering 时发出 HTTP 请求的引擎。下列选项可用: 1)Number of threads----此选项控制并发请求进程数。
2)Number of retries on network failure----如果出现连接错误或其他网络问题,BurpSuite 会放弃和移动之前重试的请求指定
的次数。测试时间歇性网络故障是常见的,所以最好是在发生故障时重试该请求了好几次。 3)Pause before retry----当重试失败的请求,
BurpSuite 会等待指定的时间(以毫秒为单位)以下,然后重试失败。如果服务器被宕掉、繁忙或间歇性的问题发生,最好是等待很短的时间,然后重试。
4)Throttle between requests----BurpSuite 可以在每次请求之前等待一个指定的延迟(以毫秒为单位)。此选项很有用,以避免超载
应用程序,或者是更隐蔽。 5)Add random variations to throttle----此选项可以通过降低您的要求的时序模式进一步增加隐身。

Request Headers

这些设置控制由蜘蛛发出的 HTTP 请求中使用的请求头。您可以配置头蜘蛛在请求中使用的自定义列表。这可能是有用的,以满足各个应用程序的


特定要求 - 例如,测试设计用于移动设备的应用程序时,以模拟预期的用户代理。
以下选项也可用:
1)Use HTTP version 1.1----如果选中,Spider 会使用 HTTP1.1 版在其请求;否则,它会使用 1.0 版。 2)Use Referer
header----如果选中,Spider 会要求从另一个页面链接到任何项目时提交相关 Referer 头。此选项很有用更加紧密地模拟将通过您的浏览器发
出的请求,并且还可能需要浏览一些应用程序验证 Referer 头。

Scanner

Using Burp Scanner

分以下几个步骤来简单使用 Scanner 1.设置好代理之后在地址栏输入你要抓取的地址,并且要在 Proxy 里把拦截关了,随后切换到 Scanner


的 Results 就可以看到地址已经在开始扫描咯
2.对地址右击还可以导出报告,

Html 或者 xml 随便你以什么格式的,然后一直下一步下一步到如下图选择保存文件到哪

我们打开看看,是不是很漂亮呢
3.如果扫描出漏洞了我们还可以直接在这针对某个漏洞进行查看,如果想测试的话可以发送到 Repeater 进行测试哦
Results

结果选项卡包含所有的扫描仪已确定,从主动和被动扫描的问题。以一种树型图显示应用程序的内容,其中的问题已经被发现,使用 URL 分解成域,目


录和文件的层次表示。如果您选择一个或多个部分的分支,所有选定的项目将扫描的问题都列出来,用组合在一起的相同类型的问题。您还可以扩大这些问题
汇总查看所有的每种类型的个别问题。如果您选择的问题那么将显示相应的详情,包括: 1)自定义的漏洞,咨询内容包括:
问题类型及其整治的标准描述。中适用于该问题,并影响其修复任何特定的功能的描述。 2)完整的请求和响应都是依据报告了该问题。在适用的情况,是
相关的识别和再现问题的请求和响应的部分在请求和响应消息的编辑器中突出显示。

通常情况下,测试并验证一个问题最快的方法是使用发送到 Repeater。另外,对于 GET 请求,您可以复制此 URL,并将其粘贴到浏览器中。


然后,您可以重新发出请求。 Burp 扫描报告描述,每一个问题都会给出严重程度(高,中,低,资讯)和置信度(肯定的,坚定的,暂定)的评级。当一个问题
一直使用一种技术,本质上是不太可靠(如 SQL 盲注)确定,Burp 会让你意识到这一点,通过丢弃的置信水平存在一定不足。这些额定值应始终被解释
为指示性的,你应该根据你的应用程序的功能和业务方面的知识进行审查。这个问题已经上市,你可以用它来执行以下操作的上下文菜单:如图所示

Report selected issues

启动 BurpSuite Scanner 的报告向导,生成的选定问题的正式报告。


Set severity - 这让你重新分配问题的严重程度。您可以设置严重程度高,中,低,或信息。您还可以标记问题作为假阳性。

Delect selected issues

删除选定问题。请注意,如果你删除了一个问题,Burp 重新发现了同样的问题(例如, 如果你重新扫描了同样的要求),那么问题将再次报告。相反,如果


你是一个假阳性标记的问题,那么这将不会发生。因此,最适合用于清理扫描结果移除你不感兴趣。对于内部的功能不需要您的问题仍然工作在主机或路径删除
的问题,您应该使用假阳性的选项。

Scan Queue

Active Scanning(主动扫描)过程通常包括发送大量请求到服务器为所扫描的每个基本的请求,这可能是一个耗时的过程。当您发送的主动扫描
请求,这些被添加到活动扫描队列,它们被依次处理。如图

扫描队列中显示每个项目的详细信息如下: 1)索引号的项目,反映该项目的添加顺序。 2)目的地协议,主机和 URL 。 3)该项目的当前状态,包括完


成百分比。 4)项目扫描问题的数量(这是根据所附的最严重问题的重要性和彩色化) 。 5)在扫描项目的请求数量进行。 注意 这不是插入点的数量的线
性函数 - 观察应用程序行为的反馈到后续攻击的请求,仅仅因为它会为一个测试仪。 6)网络错误的数目遇到的问题。 7)为项目创建的插入点的数量。
这些信息可以让您轻松地监控个别扫描项目的进度。如果您发现某些扫描进度过于缓慢 ,可以理解的原因,如大量的插入点,缓慢的应用响应,网络错误
等给定这些信息,你就可以采取行动来优化你的扫描,通过改变配置为插入点时,扫描引擎,或正在测试的主动扫描区域。

你可以双击任何项目在扫描队列显示,到目前为止发现的问题,并查看了基本请求和响应的项目。您可以使用扫描队列的上下文菜单来执行各种操作来控
制扫描过程。确切的可用选项取决于所选的项目(S )的状态,并包括:如下图所示

Show details
这将打开显示到目前为止发现的问题的一个窗口,与底座请求和响应的项目。

Scan again

此复制所选择的项目(S ) ,并将这些队列的末尾。

Delete item(S)

这将永久地从队列中删除选定的项目(S ) 。

Delect finished items


这永久删除那些已经完成了队列中的任何项目。

Automatically delete finished items

这是否切换扫描器会自动从队列为他们完成删除项目。

Pause/resume scanner

这可以暂停和恢复激活扫描仪。如果任何扫描正在进行时,扫描会暂停,而挂起的扫描请求完成后,通常会有一个短暂的延迟。

Send to

这些选项用于所选项目的基本请求发送到其它 Burp(Repeater、Intruder)工具。
Live Scanning

实时扫描可让您决定哪些内容通过使用浏览器的目标应用,通过 BurpProxy 服务器进行扫描。您可以实时主动扫描设定 live active


scanning 和 live passive 两种扫描模式。如图
Live active scanning

执行现场主动扫描,请执行以下步骤: 1)配置与目标的细节,你要主动扫描现场主动扫描设置。如果你已经配置了一套全范围的目标为你目前的工作,那么
你可以简单地通知 Burp 主动扫描落在该范围内的每个请求。或者,您可以使用 URL 匹配规则定义自定义范围。
2)各地通过 BurpProxy 通常的方式应用浏览。这将有效地展示 Burp 要扫描的应用功能。对于每一个独特的所在范围的要求,你通过你的浏览
器,Burp 会排队主动扫描请求,并将努力走在后台找到漏洞为您服务。

Live Passive Scanning

现场演示被动扫描,请执行以下步骤: 1)配置具有您要被动地扫描目标的细节 live passive scanning。默认情况下,Burp 执行所有请求


的被动扫描,但你可以限制扫描目标范围,或者使用 URL 匹配规则的自定义范围。 2)通过 BurpProxy 通常的方式应用浏览。这将有效地展示
Burp 你要扫描的应用功能。
Options

此选项卡包含 Burp 扫描选项进行攻击的插入点,主动扫描引擎,主动扫描优化,主动扫描区和被动扫描区域。

Attack Insertion Points

这些设置控制扫描仪的地方“插入点(insertion points)”到被发送的主动扫描每个基本要求。插入点攻击将被放置,探测漏洞请求中的位置。
每个定义的插入点单独扫描。
BurpSuite 为您提供细粒度地控制放置插入点,以及这些选项仔细配置会让您量身定制您的扫描到您的目标应用程序的性质。插入点的配置也代表
你的扫描速度和全面性之间进行权衡。 注:除了让 Burp 自动指定插入点,就可以完全自定义这些,这样你就可以在你想要攻击的地方放在任意一个位置。
要使用此功能,将请求发送给 Intruder,用 payload positions 标签来定义通常的方式各插入点的开始和结束,并选择入侵者菜单选项“积极定
义扫描插入点” 。您也可以指定以编程方式使用 Burp 扩展的自定义插入点位置。
1)Insertion Point Locations
这些设定可让您选择,其中插入点应放在请求中的位置的类型:
URLparameter values - URL 查询字符串中标准的参数值。 Body parameter values - 在邮件正文中,包括标准形式生成的
参数参数值,属性的多重编码的参数,如上传的文件名, XML 参数值和属性,和 JSON 值。 Cookieparameter values - 的 HTTP
Cookie 的值。 Parameter name - 任意添加的参数的名称。 URL 参数总是被添加,并且机身参数也加入到 POST 请求。测试一个附
加的参数名称通常可以检测到被错过,如果只是参数值进行了测试异常的错误。 HTTPheaders - 在引用页和用户代理标头的值。测试这些插入点
通常可以检测如 SQL 注入或跨站脚本持续在日志记录功能的问题。 AMF string parameters- 内 AMF 编码的邮件的任何字符串数
据的值。 REST-style URL parameters - URL 的文件路径部分中的所有目录和文件名 tokens 的值。测试每一个插入点可以并处
显著开销,如果你相信应用程序使用这些位置传送参数数据,才应使用。 2)Change Parameter Locations
允许您配置扫描仪将一些类型的插入点到其他地点的请求中,除了测试他们在原来的位置。例如,您可以将每个 URL 参数到邮件正文中,并重新测试
它。或者你可以移动身体的每个参数到一个 cookie ,然后重新测试它。
用这种移动参数方式往往可以绕过防过滤器。许多应用程序和应用程序防火墙执行每个参数输入验证假设每个参数是它的预期位置的要求之内。移动
参数到不同的位置可以回避这个验证。当应用程序代码后检索参数来实现其主要的逻辑,它可能会使用一个 API, 它是不可知的,以参数的位置。如果是
这样,那么移动的参数可能可以使用输入,通常会在处理之前被过滤,以达到易受攻击的代码路径。下列选项可用于更改参数的位置:
● URL to body
● URL to cookie
● Body to URL
● Body to cookie
● Cookie to URL
● Cookie to body

3)Nested Insertion Points


嵌套的插入时,会使用一个插入点的基值包含可识别的格式的数据。例如,一个 URL 参数可能包含 Base64 编码数据,并且将解码后的值可能又包含
JSON 或 XML 数据。与使用启用嵌套插入点的选项,Burp 会为输入在每个嵌套级别中的每个单独的项目适合的插入点。 Spider 仅包含常规
的请求参数请求时使用此选项不征收费用,但允许 Burp 达到更复杂的应用,数据是在不同的格式封装的攻击面。 4)Maximum Insertion
Points Per Request
无论你的设置选择,对于单个请求插入点的数目,一般视乎该请求的功能,如参数的数目。偶尔,请求可以包含的参数(几百或更多)数量。如果 Burp
执行的每个参数进行完全扫描,扫描会花费过多的时间量完成。此设置允许您设置的,将每个基本要求生成插入点的数量的限制,从而防止您的扫描由偏快转
为停滞,如果他们遇到含参数庞大的数字请求。在其中插入点的数量是由这个限制缩减的情况下,在有效扫描队列中的项目的条目将显示被跳过的插入点的
数量,使您能够手动检查基本要求,并决定是否值得执行完全扫描其所有可能的插入点。 5)Skipping Parameters
设定让您指定请求参数的 Burp 应该跳过某些测试。有跳过服务器端注入测试(如 SQL 注入)和跳过所有检查单独的列表。服务器端注入测试是
比较费时的,因为 Burp 发送多个请求探测服务器上的各种盲目的漏洞。如果您认为出现请求中的某些参数不容易(例如,内置仅由平台或 Web 服务
器中使用的参数) ,你可以告诉 Burp 不能测试这些。 (用于测试客户端蝽象跨站点脚本涉及更少的开销,因为测试每个参数规定最小的开销在扫描期间,
如果该参数不容易。 ) 如果一个参数是由您不希望测试一个应用程序组件来处理,或者修改一个参数是已知的导致应用程序不稳定跳过所有的测试可能是
有用的。列表中的每个项目指定参数类型,该项目要匹配(名称或值) ,匹配类型(文本字符串或正则表达式) ,表达式匹配。你可以通过它们的位置(斜线分
隔)的 URL 路径中标识的 REST 参数。要做到这一点,从参数下拉,“姓名”,从项目下拉“ REST 参数” ,并指定您希望从测试中排除的
URL 路径中的位置的索引号(从 1 开始) 。您还可以通过值来指定 REST 参数。

Active Scanning Engine


控制用来做主动扫描时发出 HTTP 请求的引擎。下列选项可用:

1)Number of threads - 控制并发请求数。 2)Number of retries on network failure - 如果出现连接错误或其他网络问


题,Burp 会放弃和移动之前重试的请求指定的次数。测试时间歇性网络故障是常见的,所以最好是在发生故障时重试该请求了好几次。 3)Pause
before retry - 当重试失败的请求,Burp 会等待指定的时间(以毫秒为单位)以下, 然后重试失败。如果服务器宕机,繁忙,或间歇性的问题发生,最
好是等待很短的时间, 然后重试。

Throttle between requests - 在每次请求之前等待一个指定的延迟(以毫秒为单位)。此选项很有用,以避免超载应用程序,或者是更隐蔽。

Add random variations to throttle - 通过降低您的要求的时序模式进一步增加隐身。 Follow redirections where


necessary- 有些漏洞只能通过下面的重定向进行检测(例如,在一条错误消息,跨站点脚本这是只有下列一个重定向后退还)。因为某些应用程序的问
题重定向到包含您所提交的参数值的第三方网址,BurpSuite 保护您免受无意中攻击的第三
方应用程序,不按照刚刚收取任何重定向。如果所扫描的要求是明确的目标范围之内(即您使用的是目标范围,以控制哪些被扫描的),然后 BurpSuite
只会跟随重定向是指同一范围内。如果所扫描的要求不在范围内(即你已经手动发起超出范围的请求的扫描), BurpSuite 只会跟随重定向其中(a)是
在同一台主机/端口的请求被扫描;及(b)没有明确涵盖的范围排除规则(如“logout.aspx”)。
小心使用这些选项可让您微调扫描引擎,根据不同应用对性能的影响,并在自己的处理能力和带宽。如果您发现该扫描仪运行缓慢,但应用程序表现良好
和你自己的 CPU 利用率很低,可以增加线程数,让您的扫描进行得更快。如果您发现连接错误发生,该应用程序正在放缓,或者说自己的电脑被锁定了,你
应该减少线程数,也许增加网络故障和重试之间的间隔重试的次数。如果应用程序的功能是这样的:在一个基地的要求执行的操作干扰其他请求返回的响应,
你应考虑减少线程数为 1,以确保只有一个单碱基请求被扫描的时间。

Active Scanning Optimization

主动扫描逻辑的行为,以反映扫描的目的和目标应用程序的性质。例如,您可以选择更容易发现问题,在一个大型应用程序的快速扫描;或者您可以执行
更慢全面扫描,以发现更难,而且需要更多的扫描请求,以检测问题。
下列选项可用: Scan speed(扫描速度) - 该选项决定彻底的某些扫描检查,怎么会检查是否有漏洞时。 “Fast(快速)”设置使更少的请求,并检查
一些漏洞更少的推导。在“Thorough(彻底)”的设置使更多的请求,并检查更多的衍生类型的漏洞。 “Normal(正常)”设定为中途在两者之间,
并且代表速度和完整性之间的适当折衷对于许多应用。

Scan accuracy(扫描精度) - 此选项决定的证据表明,扫描仪会报告某些类型的漏洞之前, 要求的金额。可以只使用“blind(盲)”的技术,其中,


Burp 推断可能存在基于某些观察到的行为,如时间延迟或一个差分响应的一个漏洞被检测到的一些问题。因为这些观察到的行为的发生原因,无论如何,
在没有相关联的漏洞的影响,该技术本身更容易出现假阳性比其他技术,例如在观察错误消息。试图减少误报,BurpSuite 重复某些测试了一些,当一个
假定的问题,推断时间,尝试建立提交的输入和观察到的行为之间有可靠的相关性。的准确性选项用于控制 BurpSuite 会多少次重试这些测试。在
“Minimize false negatives(最小化假阴性)”的设置进行重试较少,因此更可能报告假阳性的问题,但也不太可能会错过由于不一致的应用程序
行为的真正问题。在“Minimize false positives(最小化误报)”设置进行更多的试,所以是不太可能报告假阳性的问题,但可能会因此错误地错
过了一些真正的问题,因为有些重试请求可能只是碰巧不返回结果是测试。 “Normal(正常)”设置为中途两者之间, 并代表之间的假阳性和假阴性的问
题合适的权衡对于许多应用。 Use intelligent attack selection(使用智能进攻选择) - 此选项使通过省略出现无关紧要给每个插入点参数
的基值支票扫描更有效率。例如,如果一个参数值包含不正常出现在文件名中的字符,BurpSuite 会跳过文件路径遍历检查此参数。使用这个选项,可以
加快扫描件,
具有相对低的存在缺少实际的漏洞的风险。

Active Scanning Areas

定义哪些是主动扫描过程中进行检查。是检查以下类别可供选择:
SQL injection(SQL 注入) - 这有子选项,以使不同的测试技术(误差为基础,延时测试,布尔条件测试) ,并且也使检查特定于单个数据库类型(
MSSQL ,Oracle 和 MySQL 的) 。 OS command injection(操作系统命令注入) - 这有子选项,以使不同的测试技术.。
Reflected XSS(反映了跨站点脚本) Stored XSS(存储的跨站点脚本) File path traversal(文件路径遍历) HTTP header
injection(HTTP 头注入) XML/SOAP injection(XML / SOAP 注射) LDAP injection(LDAP 注入) Open
redirection(开放重定向) Header manipulation(头操纵) Server-level issues 服务器级的问题
所执行的每个检查增加的请求的数目,以及每个扫描的总时间。您可以打开或关闭个别检查根据您的应用程序的技术知识。例如,如果你知道某个应用程
序不使用任何 LDAP ,您可以关闭 LDAP 注入测试。如果你知道哪个后端数据库的应用程序使用,你可以关闭 SQL 注入检测特定于其他类型的
数据库。您也可以选择性地启用基于你如何严格要求你的
扫描是检查。例如,您可以配置 BurpSuite 做应用程序的快速一次过,只为 XSS 和 SQL 注入的网址和参数检查,每漏洞类型更全面的测试在每
一个插入点之前。

Passive Scanning Areas

自定义的请求和响应的各个方面在被动扫描检查。下列选项可用:

Headers--头 Forms--表格 Links--链接 Parameters--参数


Cookie MIME 类型 Caching 缓存 Information
disclosure--信息披露 Frameable responses--耐燃反应(“点击
劫持”) ASP.NET 的 ViewState
需要注意的是被动扫描不会派出自己的任何要求,和每个被动强加检查您的计算机上一个微不足道的处理负荷。不过,你可以禁用检查各个领域,如果你
根本就不关心他们, 不希望他们出现在扫描结果。

Intruder
Burp intruder 是一个强大的工具,用于自动对 Web 应用程序自定义的攻击。它可以用来自动执行所有类型的任务您的测试过程中可能出现
的。

要开始去了解 BurpSuite Intruder,执行以下步骤: 1)首先,确保 Burp 安装并运行,并且您已配置您的浏览器与 Burp 工作。 2)如果你


还没有这样做的话,浏览周围的一些目标应用程序,来填充的应用程序的内容和功能的详细信息 Burp 的 SiteMap。在这样做之前,要加快速度,进
入代理服务器选项卡,然后截取子标签,并关闭代理拦截(如果按钮显示为“Intercept is On”,然后点击它来截取状态切换为关闭) 。
3)转到 Proxy 选项卡,并在 History 选项卡。发现一个有趣的前瞻性要求,您的目标应用程序,包含了一些参数。选择这个单一的请求,然后从
上下文菜单中选择“Send to intruder” 。
4)转到 Intruder 标签。Burp Intruder 可以让你同时配置多个攻击。您 Send to Intruder 的每个请求在自己的攻击选项卡中打开,
而这些都是顺序编号的默认。您可以双击标签头重命名选项卡,拖动标签来重新排序,并且还关闭和打开新的标签页。
5)为您发送请求建立的 Intruder 选项卡,看看 Target 和 Positions 选项卡。这些已经自动填入您发送的请求的细节。
• 6)Burp Intruder 本质工作,采取了基本模板的要求(你送到那里的那个) ,通过一些 payloads 的循环,将这些 payloads 送入定义的
Positions,基本要求范围内,并发出每个结果的要求。位置标签用于配置,其中有效载荷将被插入到基本要求的位置。你可以看到,BurpSuite
一直在你想用来放置有效载荷自动进行猜测。默认情况下,有效载荷放入所有的请求参数和 cookie 的值。每对有效载荷标记定义了一个有效载荷的
位置, 并且可以从基体的要求,这将被替换的有效载荷的内容,当该 payload position 用于括一些文本。有关进一步详情,请参阅 Payload
Markers 的帮助。
7)旁边的请求编辑器中的按钮可以被用于添加和清除有效载荷的标志。试着增加 payload position 在新的地点请求中,并删除其他标志物,并
看到效果了。当你理解了 payload positions 是如何工作的,请单击“Auto§ ”按钮恢复到 BurpSuite 为您配置的默认 payload
positions。如果你修改了请求本身的文本,可以重复步骤 3 创建与它的原始请求一
个新的 Intruder 的攻击选项卡。
8)转到 Payloads 选项卡。这使您可以定义将要放入已定义的有效载荷仓的有效载荷。保持默认设置(使用有效载荷的“Simple list” ) ,并
添加一些测试字符串到列表中。您可以通过输入到“Enter a new item”框中,单击“add”,输入自己的字符串。或者您可以使用“add from
file”下拉菜单,然后选择“Fuzzing-quick”,从内置的负载串[专业版]列表中。
9)现在,您已经配置了最低限度的选项来发动攻击。转到 Intruder 菜单,然后选择 “Start attack” 。

10)在包含在结果选项卡一个新的窗口中打开攻击。结果表包含已经取得,与各关键细节,如所使用的有效载荷, HTTP 状态码,响应长度等,您可以


在表中选择任何项目,以查看完整的请求和响应每个请求的条目。您还可以对表进行排序通过单击列标题,并使用过滤器栏过滤表中的内容。这些特征以相
同的方式工作,作为 Proxy history。
11)这次袭击窗口包含其他标签,显示被用于当前攻击的配置。您可以修改大部分这种配置的攻击已经开始。转到选项选项卡 ,向下滚动到“ grep-
match” ,并勾选“标志的结果与项目相匹配的响应这些表达式” 。这将导致 Intruder 检查响应匹配列表中的每个表达式项目和标志的火柴。默认
情况下,列表显示 fuzzing 时是很有用的一些常见的错误字符串,但可以配置,如果你想自己的字符串。返回 result 选项卡,看到 Intruder 增加
了对每个项目列在列表中,而这些包含复选框,指示表达式是否被发现在每一个响应。如果你是幸运的,你的基本模糊测试可能引发一个错误的存在在一些回
应的错误消息。
12)现在,在表中选择任何项目,并期待在该项目的响应。发现在反应(如网页标题, 或错误消息)一个有趣的字符串。右键单击该项目在表中,然后从上
下文菜单中选择 “Define extrace grep from response” 。在对话框中,选择响应的有趣字符串,然后单击“确定” 。结果表中现在包含一
个新的列,其提取这一段文字从每个响应(其可以是不同的在每一种情况下) 。您可以使用此功能来定位在大型攻击有趣的数据与成千上万的反应。请注意,
您还可以配置“extrace grep ”项目中的选项选项卡,在此之前前或在攻击期间。
13)在结果表中选择任一项目,并打开上下文菜单。选择“Send to Repeater” ,然后转到 Repeater 选项卡。你会看到所选的请求已被复
制到 Repeater 工具,进行进一步的测试。许多其他有用的选项是可用的上下文菜单中。有关发送 BurpSuite 工具之间的项目,使整体测试工作流
程的详细信息。
14)您可以使用“Save”菜单在结果窗口中都救不结果表或整个攻击。你可以加载结果表到其他工具或电子表格程序。您可以通过在主 Burp 的 UI
Intruder 菜单重新加载保存的攻击。 15)这些步骤只介绍一个简单的用例 Intruder,对于 Fuzzing 的要求有一些标准的攻击字符串和用 grep
搜索中的错误消息。您可以使用 Intruder 许多不同类型的攻击,有许多不同的 payloads 和攻击选项。
Using Burp Intruder

for example 这里我本地搭建一个环境,爆破一个 php 大马,一句话木马就把 get 改成 post,如果是 php 一句话,就在下面加上 php 这行
代码,如图

asp password=execute("response.clear:response.write(""passwordright""):response.end") php


password=execute("response.clear:response.write(""elseHelloWorld""):response.end") aspx
password=execute("response.clear:response.write(""elseHelloWorld""):response.end")。一般步骤如下 1.
代理好服务器地址,然后访问这个大马地址
2.随后点击 forward,并且在大马页面随便输入什么,burp 拦截了数据之后发送到 repeater

3.切换到 repeater 选项卡中,点击 go 按钮,找出一些反馈的错误信息,当然如果不要也可以,这里找错误信息是方便爆破成功了之后便于发现,我这


个马反馈的是中文错误信息, 显示是乱码就不写了,我们可以通过爆破成功了之后看字节数。 4.接下来就是发送到 intruder,target 一般都不需要
管,已经自动填好了,然后选择 positions

先点击 Clear$,选择密码地地方点击 add$。

5.切换到 payloads 设置 payload type,选择我们自己的字典


6.切换到 options 去设置进程数和失败之后重试次数、过滤结果

一般我都会把 Grep-Match 清理掉,省得干扰。


7.接下来点击 intruder 下的 start attack 就开始爆破了,密码 admin,我是根据 length 来判断跟其他的不同

Target

用于配置目标服务器进行攻击的详细信息。所需的选项有: Host(主机) - 这是目标服务器的 IP 地址或主机名。 Port(端口) - 这是 HTTP


/ S 服务的端口号。 Use HTTPS(使用 HTTPS),这指定的 SSL 是否应该被使用。配置这些细节最简单的方法是选择你要攻击中
BurpSuite 的任何地方的请求,并选择上下文菜单中的“Send to intruder”选项。这将发送选定的请求,在 intruder 一个新的选项卡,将自
动填充的目标和位置选项卡。

Positions

用于配置 request temlate 的攻击,和 payloads markers、attack type 一起。

Request Template

主要请求编辑器是用来定义从所有攻击请求都将被导出的请求模板。对于每一个攻击的请求,BurpSuite 接受请求的模板,并把一个或多个有效载
荷送入由有效载荷标记定义的位置。成立请求模板的最简单的方法是选择你要攻击中 BurpSuite 的任何地方的请求,并选择上下文菜单中的“Send
to intruder”选项。这将发送选定的请求,在 intruder 的选项卡,将自动填充的 Target 和 Positions 选项卡。

Payload Markers

有效载荷的标记是使用§字符,并且功能如下放置: 1)每对标记指定一个有效载荷的位置。 2)一对标记物可以从它们之间任选的模板要求附上一些文字。


3)当一个有效载荷的位置被分配了一个有效载荷,无论是标记和任何包含的文本将被替换为有效载荷。 4)当一个有效载荷的位置不具有分配的有效载

荷,该标记将被删除,但是所包含的文本保持不变。为了使配置更加简单,Intruder 会自动突出显示每对有效载荷的标记和任何它们之间
包含的文本。
您可以手动或自动做有效载荷标记。当您从 BurpSuite 别处发送一个请求到 Intruder,Intruder 猜测你可能要放置有效载荷,并设置相应
的有效载荷标记。您可以修改使用按钮的默认有效载荷标记旁边的请求模板编辑器: Add§ - 如果没有文本被选中,该插入一个有效载荷标记在光标位置。
如果您已经选择了一些文字,一对标记插入封闭选定的文本。 Clear§ - 这将删除所有的位置标记,无论是从整个模板或模板的选定部分。 Auto§ -
自动放置有效载荷标记。包括价值:
1)URL 查询字符串参数 2)车身参数 3)曲奇饼 4)多重参数属性(例如,在文件上传的文件名) 5)XML 数据和元素属性 6)JSON 参数您可
以配置自动负载位置是否将更换或追加到现有的参数值,通过入侵者菜单上的选项。需要注意的是,如果一个子部分的要求,但不是整个消息体,包含格式化
数据使用 XML 或 JSON ,可以自动通过这种结构中的位置的有效载荷手动选择格式化数据的准确块,并使用“自动”按钮在其定位的有效载荷。这
是有用的,例如,当一个多参数的值包含在 XML 或 JSON 格式数据。刷新 - 这将刷新请求模板编辑器的语法彩色化,如果必要的。清除 - 这会删
除整个请求模板。注意:您也可以使用入侵者的有效载荷仓的 UI 通过 BurpSuite 扫描仪配置自定义插入点主动扫描。要做到这一点,配置请求模板
和有效载荷在标记内入侵者通常的方式,然后选择从入侵者菜单中的“主动扫描定义插入点” 。

Attack type

Burp Intruder 支持各种攻击类型 - 这些决定在何种负载分配给有效载荷仓的方式。攻击类型可以使用请求模板编辑器上方的下拉菜单进行选择。


以下攻击类型可供选择:

Sniper(狙击手) - 这将使用一套单一的 payloads。它的目标依次在每个有效载荷的位置, 并把每个有效载荷送入依次那个位置。这不是针对一


个给定的请求的位置不受影响 - 位置标记被移除,并在它们之间出现在模板中任何封闭文本保持不变。这种攻击类型为个别模糊测试的一些请求参数常见的漏
洞非常有用。在攻击中生成的请求的总数是位置的数目和在有效载荷中设定的有效载荷的数量的乘积。
Battering ram(撞击物) - 使用一组 payload。通过迭代的有效载荷方式,并将相同的 payloads 再一次填充到所有已定义的有效载
荷仓。当其中一个攻击需要相同的输入将被插入在多个地方在请求中(例如,一个 Cookie 中的用户名和 cookie 参数)对这种攻击类型是非常有用
的。在攻击中生成的请求的总数是有效载荷的有效载荷中设定的数目。

例如生成一组数字 1-9,则就是 1-1 ,2-2,3-3 这种形式


Pitchfork(相交叉) - 这将使用多个 payloads 集。有对每个定义的位置(最多 20 个)不同的有效载荷组。通过设置所有有效载荷的攻击
迭代的方式,并将一个有效载荷到每个定义的位置。
例如设置多个,每个 payload 设置一个字典,则就是 1-1-1,2-2-2,3-3-3 这种形式
换句话说,第一个请求将放置第一个有效载荷的 Payload set 1 到 Positions 1 ,并从有效载荷中的第一个 Payload set 2 到
Positons 2 ;第二个请求将放置第二个 Payload set 1 到 Positions 1 ,并从 payload 中的第二个 Payload set 2 到
Postions2 ,等在那里的攻击需要不同但相关的输入进行插在多个地方,这种攻击类型是有用的请求(例如,用户名中的一个参数,和对应于该用户名中
的另一个参数已知的 ID 号) 。在攻击中生成的请求的总数是有效载荷中的最小有效载荷组的数目。
Cluster bomb(集束炸弹) - 使用多个 Payload sets。有对每个定义的 Positions(最多 20 个)设置不同的 payload set。
通过每个有效载荷的攻击迭代依次设置,使有效载荷组合的所有排列进行测试。
例如设置三个字典都是 10 个数,则总共有 1000 总匹配的模式

也就是说,如果有两个有效载荷的位置,则该攻击将放置第一个有效载荷从 payload set 2 到 Positions 2 ,并通过在有效负载的所有


payload set 1 中的 positions 1 ;然后它将第二个有效载荷从载荷设置 2 到位置 2 ,并通过有效载荷全部载入循环设置 1 到位置 1 。其中
一个攻击需要不同的和无关的或未知输入要在多个地方插入这种类型的攻击是非常有用的在请求中(例如猜测凭证,在一个参数的用户名,并且在另一个参数

密码时) 。在攻击中生成的请求的总数是在所有定义的有效载荷的有效载荷集的数目的乘积 - 这可能是非常大的。Payloads

Types

Burp Intruder 包含以下几种 attack type: Simple list--简单字典 Runtime file--查找自己的字典文件 Custom
iterator--自定义迭代器 Position 1 添加 1,11,111 Position 2 添加 2,22,222 Position 3 添加 3,33,333 在枚举时会生
成如下格式字典:123,1123,11123,1223,11223,111223,12223 依次类推。 Character substitution--字符替换 此负
载类型允许您配置一个字符串列表,并应用各种字符替换到每个项目。这可能
是在密码猜测攻击非常有用,用来产生在字典中的单词常见的变化。用户界面允许您配置了一些字符替换。当执行攻击,有效载荷类型工程通过
逐一配置的列表项。对于每个项目,它产生一个数的有效载荷,根据所定义的取代基包括取代的字符的所有排列。例如,默认替换规则
(a>4,b>8,e>3,i>1) 如 admin,在枚举时会先枚举一次 admin, 然后再替换 a>4(4dmin), 接着会替换 i>1(adm1n), 最后才全
部替换 a>4 i>1(4dm1n),依次类推 Case modification--此负载类型允许您配置一个字符串列表,并应用各种情况下修改每个项目。
这可能对密码猜测攻击非常有用,用来产生在字典中的单词的情况下的变化。可以选择以下的情况下修改规则: No change - 这个项
目可以用不被修改。 To lower case- 在该项目的所有字母转换为小写。 To upper case - 在该项目的所有字母转换
为大写。 To Propername - 在该项目的第一个字母转换为大写,以及随后的字母转换为小写。 To ProperName -

在该项目的第一个字母转换为大写,以及随后的字母都不会改变。例如: Peter Wiener peter wiener PETER WIENER Peter


wiener

Recursive grep--递归 grep,要用这个必须在 Intruder>options>Grep-extract 下添加一个响应匹配,比如说我一个请求页需要


前一个响应页中的内容,这里就可以这样使用了。 Illegal Unicode--非法的 Unicode Character blocks--字符块
Numbers--数字 Dates--日期 Brute forcer--暴力 Null payloads--空的有效负载 Character frobber--字符
frobber Bit flipper--位反转 Username generator--用户名生成器 ECB block shuffler--欧洲央行座洗牌
Extension-generated--扩展生成 Copy other payload--复制其它有效负载

Processing

由配置的有效载荷类型生成的有效载荷可以使用各种有效载荷的处理规则和有
效负载编码可以进一步操纵。 1)Payload
Processing Rules
在它被使用之前可以定义规则来对每个有效载荷执行各种处理任务。该定义的规则按顺序执行,并且可以打开和关闭,以帮助调试与配置的
任何问题。有效载荷的处理规则是有用的在多种情况下,你需要生成不同寻常的有效载荷,或者需要在一个更广泛的结构或在使用前编码方案包
的有效载荷可达。
Add prefix - 添加一个文字前缀 Add suffix - 添加一个文字后缀 Match/replace - 将替换匹配特定正则表达
式的有效载荷的任何部位,用一个文字字符串表示。
Substring - 提取的有效载荷的子部分中,从指定的偏移量(0-索引)和至所指定的长度开始。
Reverse substring - 对于子规则来说,最终的偏移量指定的有效载荷的末尾向后计数,并且长度从端部向后偏移计数。
Modify case - 这个修改了的有效载荷的情况下,如果适用的话。同样的选项作为的情况下修改有效载荷类型。
Encode - URL,HTML,Base64 的,ASCII 码或十六进制字符串构建各种平台: 采用不同的计划,该编码的有效
载荷。
Hash - hash Add raw payload - 这之前或之后,在当前处理的值增加了原始负载值。它可以是有用的,例如,如果你
需要提交相同的有效载荷在 raw 和哈希表。
Skip raw payload - 将检查是否当前处理的值匹配指定的正则表达式,如果是这样,跳过有效载荷和移动到下一个。这可能
是有用的,例如,如果知道一个参数值必须有一个最小长度和要跳过的一个列表,比这更短的长度的任何值。
Invoke Burp extension - 调用一个 Burp exxtension(扩展)来处理负载。扩展名必须已注册入侵者有效
载荷处理器。您可以从已注册的当前加载的扩展可用的处理器列表中选择所需的处理器。是规则的以下类型: 2)Payload Encoding
你可以配置哪些有效载荷中的字符应该是 URL 编码的 HTTP 请求中的安全传输。任何已配置的 URL 编码最后应用,任何有效
载荷处理规则执行之后。
这是推荐使用此设置进行最终 URL 编码,而不是一个有效载荷处理规则,因为可以用来有效载荷的 grep 选项来检查响应为呼应有效载
荷的最终 URL 编码应用之前。 ..

Optins

此选项卡包含了 request headers,request engine,attack results ,grep match,grep_extrack,grep payloads 和


redirections。你可以发动攻击之前,在主要 Intruder 的 UI 上编辑这些选项,大部分设置也可以在攻击时对已在运行的窗口进行修改。

Request Headers

这些设置控制在攻击 Intruder(入侵者)是否更新配置请求头。请注意,您可以完全控制请求头通过在 Payload positions(有效载荷位置)


标签的要求范围内。这些选项可以用来更新每个请求的报头的方式,通常是有帮助的。下列选项可用: Update Content-length
header(更新 Content-Length 头) - 此选项使 Intruder(入侵者)添加或更新的 Content-Length 头的每个请求,与该特定请求的
HTTP 体的长度正确的值。此功能通常用于该插入可变长度的有效载荷送入模板的 HTTP 请求的主体的攻击至关重要。如果未指定正确的值,则目
标服务器可能会返回一个错误,可能不完全响应请求,或者可能无限期地等待在请求继续接收数据。 Set Connection:close(设置连接:关闭) -
此选项使 Intruder(入侵者)添加或更新连接头的值为“close(关闭)” 。在某些情况下(当服务器本身并不返回一个有效的 Content-Length
或 Transfer-Encoding 头) ,这个选项可以让攻击更快速地执行。
Request Engine

设置控制用于发出 HTTP 请求中的 Intruder(入侵者)攻击的 Engine(引擎)。下列选项可用: Number of threads(执行进程数) -


[专业版]该选项控制并发请求数的攻击。 Number of retries on network failure(网络故障的重试次数) - 如果出现连接错误或其他网络
问题,Burp 会放弃和移动之前重试的请求指定的次数。测试时间歇性网络故障是常见的, 所以最好是在发生故障时重试该请求了好几次。 Pause
before retry(重试前暂停) - 当重试失败的请求,Burp 会等待指定的时间(以毫秒为单位) ,然后重试失败以下。如果服务器被宕机,繁忙,或间歇性
的问题发生,最好是等待很短的时间,然后重试。 Throttle between requests(请求之间的节流) - Burp 可以在每次请求之前等待一个指定的
延迟(以毫秒为单位) 。此选项很有用,以避免超载应用程序,或者是更隐蔽。或者,您可以配置一个可变延迟(与给定的初始值和增量) 。这个选项可以是有用
的测试应用程序执行的会话超时时间间隔。 Start time(开始时间) - 此选项允许您配置攻击立即启动,或在指定的延迟后,或开始处于
暂停状态。如果攻击被配置,将在未来的某个时刻以供将来使用被执行,或保存这些替代品可能是有用的。小心使用这些选项可让您微调攻击引擎,这取决于
对应用程序性能的影响,并在自己的处理能力和带宽。如果您发现该攻击运行缓慢,但应用程序表现良好和你自己的 CPU 利用率很低,可以增加线程数,
使你的攻击进行得更快。如果您发现连接错误发生,该应用程序正在放缓,或者说自己的电脑被锁定了,你应该减少线程数,也许增加网络故障和重试之间的
间隔重试的次数。

Attack Results

这些设置控制哪些信息被捕获的攻击效果。下列选项可用: Store requests/responses(存储请求/响应) - 这些选项确定攻击是否会保存单个请


求和响应的内容。保存请求和响应占用磁盘空间,在你的临时目录中,但可以让您在攻击期间在众目睽睽这些,如果有必要重复单个请求,并将其发送到其他
Burp 工具。 Make unmodified baseline request(未修改的基本请求) - 如果选择此选项,那么除了配置的攻击请求,Burp 会发出模
板请求设置为基值,所有有效载荷的位置。此请求将在结果表显示为项目# 0 。使用此选项很有用,提供一个用来比较的攻击响应基地的响应。 Use
denial-of-service mode(使用拒绝服务的模式) - 如果选择此选项,那么攻击会发出请求, 如正常,但不会等待处理从服务器收到任何答复。只要
发出的每个请求, TCP 连接将被关闭。这个功能可以被用来执行拒绝服务的应用层对脆弱的应用程序的攻击,通过重复发送该启动高负荷任务的服务器上,
同时避免通过举办开放套接字等待服务器响应锁定了本地资源的请求。 Store full payloads(保存完整的有效载荷) - 如果选择此选项,Burp 将
存储全部有效载荷值的结果。此选项会占用额外的内存,但如果你想在运行时执行某些操作,如修改 payload grep setting(有效负载值设置),或重新
发出请求与修改请求模板可能需要。

Grep-Match

设置可用于包含在响应中指定的表达式标志结果的项目。对于配置列表中的每个项目, Burp 会添加一个包含一个复选框,指出项目是否被发现在每个响


应的新成果列。然后,您可以到组排序此列(通过单击列标题)匹配的结果相加。使用此选项可以是非常强大的,帮助分析大套的成绩,并迅速找出有趣的项目。
例如,在口令猜测攻击,扫描短语,如“password incorrect(密码不正确)”或“login successful(登录成功)”,可以找到成功登录;在测试
SQL 注入漏洞,扫描含有“ ODBC ” , “error(错误)”等消息可以识别易受攻击的参数。除了表达式匹配的列表,下列选项可用: Match(匹配类
型) - 指定的表达式是否是简单的字符串或 regular expressions(正则表达式)。 Case sensitive match(区分大小写的匹配) - 指定检
查表达式是否应区分大小写。 Exclude HTTP headers(不包括 HTTP 头) - 指定的 HTTP 响应头是否应被排除在检查。
Grep-Extrack
可以被用来 Extrack(提取)从反应有用的信息进入攻击结果的表。对于配置列表中的每个项目,Burp 会添加一个包含提取该项目的文本的新成果
列。然后,您可以排序此列(通过单击列标题)命令所提取的数据。例如我要匹配

information_schema 这个表。则可以这样写,都是需要匹配唯一的那种,也可以使用正则, 前提是你会写正则。在乌云社区有人提起过当时怎么


匹配手机号,就可以从这里提取。

Grep-Payloads

设置可用于含有所提交的有效载荷的反射标志的结果项。如果启用该选项,Burp 会添加一个包含一个复选框,指示当前负载的值是否被发现在每个响
应的新成果列。 (如果使用一个以上的有效载荷,单独的列将每个有效载荷集加。 ) 此功能可以在检测跨站点脚本和其他应对注入漏洞,它可以出现在用
户输入动态地插入到应用程序的响应是有用的。下列选项可用:
Case sensitive match(区分大小写的匹配) - 指定检查 payload(负载)是否应区分大小写。 Exclude HTTP headers(不包括
HTTP 头) - 这指定的 HTTP 响应头是否应被排除在检查。 Match against pre-URL-encoded payloads(对预 URL
编码的有效载荷匹配) - 这是正常的配置 Inturder(入侵者)请求中 URL 编码的有效载荷。然而,这些通常是由应用程序解码,回荡在他们的原始形
式。您可以使用此选项,以用于有效载荷 Burp 检查反应在他们的预编码形式。Redirections

控制 Burp 在进行攻击时如何处理重定向。它往往是要遵循重定向来实现你的攻击目标。例如,在一个口令猜测攻击,每一次尝试的结果可能只能通过下
面的重定向显示。模糊测试的时候,相关的反馈可能只出现在最初的重定向响应后返回的错误消息。下列选项可用: Follow redirections(跟随重定
向) - 控制重定向都遵循的目标。下列选项可用: 1)Never(从来没有) - 入侵者不会遵循任何重定向。 2)On-site only(现场唯一的) - 入侵者只
会跟随重定向到同一个网页“网站” ,即使用相同的主机,端口和协议的是在原始请求使用的 URL 。 3)In-scope only(调查范围内的唯一) -
Intruder 只会跟随重定向到该套件范围的目标范围之内的 URL 。 4)Always(总是) - Intruder 将遵循重定向到任何任何 URL 。您应使
用此选项时应谨慎 - 偶尔,
Web 应用程序在中继重定向到第三方的请求参数,并按照重定向你可能会不小心攻击。 Process cookies in redirections(过程中的
Cookie 重定向) - 如果选择此选项,然后在重定向响应设置任何 cookies 将被当重定向目标之后重新提交。例如,如果你正在尝试暴力破解登录的
挑战就可能是必要的,它总是返回一个重定向到一个页面显示登录的结果,和一个新的会话响应每个登录尝试创建。 Burp 会跟进到 10 链重定向,如果
必要的。在结果表中的列将显示重定向是否其次为每个单独的结果,以及完整的请求和响应中的重定向链存储与每个结果的项目。重定向的类型 Burp 会
处理( 3xx 的状态码,刷新头,等)配置在一套全重定向选项。 注意重定向: 在某些情况下,可能需要下面的重定向时只使用一个单线程的攻击。出现这种
情况时,应用程序存储会话中的初始请求的结果,并提供重定向响应时检索此。自动下重定向有时可能会造成问题 - 例如,如果应用程序响应一个重定向到
注销页面的一些恶意的请求,那么下面的重定向可能会导致您的会话被终止时,它原本不会这么做。

Attacks

当你配置完你的攻击设置时,你需要 launch the attacks(发起攻击), analyze the results(分析结果),有时


修改攻击配置,与您的测试工作流程链接, 或进行其他操作。
request 请求数 Position 有效载荷位置编号 Payload 有效载荷
Launching an Attack

攻击可以通过两种方式启动: 1)您可以配置 Target(目标),Positions(位置),Payloads(有效载荷)和


Options(选项卡)的攻击设置,然后选择从 Intruder(入侵者)菜单“Start attack(开始攻击)”。 2)您可以通过从
Intruder menu(入侵者菜单)中选择“previously saved attack(打开保存的攻击)”打开以前保存的攻击。在
单独的窗口中每次攻击会打开。该窗口显示攻击为它们生成的结果,使您能够修改攻击配置实时,并与您的测试工作流程链接,或进行其他操作。

Result Tab

在结果选项卡包含在攻击发出的每个请求的全部细节。你可以过滤并标注此信息来帮助分析它,并使用它来驱动您的测试工作流程。
1)Results Table
Results Table 显示已在 attack 中所有的请求和响应的详细信息。根据不同的攻击配置,表可能包含以下几列,其中一些
是默认隐藏的,可以使用 Columns 菜单中取消隐藏:
Status http 状态 Error 请求错误 Timeout 超时 Length 字节数 Comment
注释

2)Display Filter
结果选项卡,可以用来隐藏某些内容从视图中,以使其更易于分析和对你感兴趣的工作内容显示过滤在结果表中。点击过滤器栏打开要编辑
的过滤器选项。该过滤器可以基于以下属性进行配置:

Search term(检索词) - [专业版]您可以筛选反应是否不包含指定的搜索词。您可以设定搜索词是否是一个文字字符串或正则


表达式,以及是否区分大小写。如果您选择了“negative search(消极搜索)”选项,然后不匹配的搜索词唯一的项目将被显示。
Status code(状态代码) - 您可以配置是否要显示或隐藏各种 HTTP 状态码响应。Annotation(注释) - 您可以设

定是否显示使用用户提供的评论或只重点项目。 在结果表中显示的内容实际上是一个视图到基础数据库,并显示过滤器控制什么是包含在该视图。
如果设置一个过滤器,隐藏一些项目,这些都没有被删除,只是隐藏起来,如果你取消设置相关的过滤器将再次出现。这意味着您可以使用筛选器
来帮助您系统地研究一个大的结果集(例如,从模糊测试包含许多参数的要求) 来理解各种不同的有趣的响应出现。

Attack configuration Tabs

在结果选项卡中,攻击窗口包含每个从它目前的攻击是基于主界面的配置选项卡中的克隆。这使您能够查看和修改攻击配置,同时进攻正在
进行中。有关进一步详情,请参阅各配置选项卡的帮助:目标职位有效载荷选项当修改一个跑动进攻的配置,以下几点值得关注:攻击结构的某些
部分是基本的攻击(如攻击类型和有效载荷类型)的结构,并且攻击已经开始之后不能改变。改变配置的某些部分攻击正在运行时,可能会有意
想不到的效果。
例如,如果您使用的是数量的有效载荷和编辑字段中,然后更改才会生效,因为每个键被按下;如果你最初从删除数字字段中,那么攻击可能会

突然完成,因为要字段现在包含一个较小的数字。我们强烈建议您暂停修改它们的配置运行前的攻击。Result Menus

结果视图包含几个菜单命令与控制的攻击,并进行其他操作。这些将在下面说明。

1)Attack Menu(攻击菜单)

包含的命令 pause(暂停),resume(继续)或 repeat(重复)攻击。

2)Save Menu(保存菜单)
attack - 这是用来保存当前攻击的副本,包括结果。保存的文件可以使用从主 Burp 的 UI Intruder 菜单中的“打开保
存的攻击”选项来重新加载。

Results table - 这是用于对结果表保存为一个文本文件。你可以选择保存的所有行,或仅选定的行。您也可以选择要包括的列,


列分隔符。此功能是有用的导出结果到电子表格中,以便进一步分析,或用于保存单个列(如使用提取的 grep 函数挖掘数据),以用作用于
随后的攻击或其它工具的输入文件。

Server responses - 这是用于保存收到的所有请求的全部应答。这些既可以被保存在单独的文件中(顺序编号)或串行级联


的序列转换成一个单一的文件。

Attack configuration - 这是用来保存当前正在执行攻击的配置(而不是结果)。您可以重新使用从主 Burp 的 UI


Intruder 菜单中的“加载配置攻击”选项, 攻击配置。

3)Columns Menu(列菜单)
这使您可以选择哪些可用的列是可见的攻击结果表。

Repeater

Burp Repeater(中继器)是用于手动操作和补发个别 HTTP 请求,并分析应用程序的响应一个简单的工具。您可以发送一


个内部请求从 Burp 任何地方到 Repeater(中继器),修改请求并且发送它。

Using Burp Repeater

您可以使用中继器用于各种目的,如改变参数值来测试输入为基础的漏洞,发出以特定的顺序要求,以测试逻辑缺陷,并可以多次重发从
Burp Scanning results(扫描结果)的要求手动验证报告的问题。
For example:
1)可以从 Proxy history、site map、Scanner result 里地项目地址详情发送到 repeater,可以对页面数据进行修改。
2)点击 go,发送请求,右边响应请求。 3)可以通过“<“和”>“来返回上一次和下一个操作。 4)单击”x“可以删除当前测试
请求页面,.....表示打开新的标签页 5)底部的功能用于搜索条件,可以用正则表达式,底部右边显示匹配结果数

Issuing Requests

主中继器的用户界面可让您在多个不同的请求同时工作,每一个在它自己的标签。当你发送请求到中继器,每一件都是在自己的编号标签打
开。
每个选项卡都包含以下项目: 控制发出请求,然后浏览请求的历史。目标服务器的请求将被发送显示- 你可以点击目标细节来改变这些。
HTTP 消息中包含的编辑器将发出的请求。您可以编辑该请求,并一遍又一遍地
重新发布它。
HTTP 消息编辑器,显示从上次发出的请求接收到的响应。开始与中继器工作的最简单的方法是选择要在另一个 burp 工具(如
Proxy history 或 site map)工作的要求,并在上下文菜单中使用“Send to Repeater(发送到转发器)”选项。
这将在中继器创建一个新的请求选项卡,并自动填充目标细节和请求消息的编辑器相关的细节。然后,您可以修改并发出所需的要求。当你的要
求准备好发送,点击“go(转到)”按钮,将其发送到服务器。当这个被接收时,与响应长度和一个计时器(以毫秒为单位)一起被显示的响应。
您可以使用通常的 HTTP 消息的编辑功能,以帮助分析请求和响应消息,并开展进一步的行动。

Request History

每个中继器选项卡维护其自身已在它的请求的历史。您可以点击“ <”和“ > ”按钮来向前和向后导航这段历史,并查看每个请求和响应


您也可以使用下拉按钮以显示历史相邻项的编号列表,并迅速转移给他们。在历史上的任何时候,你可以编辑和重新发布当前显示的请求。

Repeater Options

Burp Repeater 具有控制其行为的各种选项,包括自动更新的 Content- Length 头的,拆包的压缩内容,和重定


向的下面。你可以通过 Repeater(中继器) 菜单访问这些选项。

Managing Request Tabs

您可以轻松地管理 Repeater 的 request(请求)选项卡。您可以: 通过双击该选项卡头重命名标


签。通过拖动重新排列标签。通过单击最右侧的“...”选项卡上打开一个新的标签。关闭选项卡单击该选项卡
标题中的 X 按钮。
Options

直放站菜单控制的 burpRepeater 的行为方面。下列选项可用:

Update Content-length

该选项控制 Burp 是否自动更新的要求在必要的 Content-Length 头。使用这个选项通常是必不可少的,当请求消息中


包含一个身体。

Unpack gzip/deflate

该选项控制 Burp 是否自动解压缩在收到的答复的 gzip 和 deflate 压缩内容。

Follow redirections

此设置控制是否重定向响应会被自动执行。下列选项可用: 1)Never - 中继器将不会跟随任何重定向。 2)On-site only


- 中继器将只跟随重定向到同一个网页“site”,即使用相同的主机,端口和协议的是在原始请求使用的 URL。

3)In-scope Only - 中继器将只跟随重定向到该套件范围的目标范围之内的 URL。4)Always - 中继器将跟随重定

向到任何 URL 任何责任。您应使用此选项时应谨 慎- 偶尔,Web 应用程序在中继重定向到第三方的请求参数,并按照重定向你可能会


不小心攻击你不想要的。

Process cookies in redirections


如果选择此选项,然后在重定向响应设置任何 cookies 将被当重定向目标之后重新提交。

View 此子菜单允许您配置了请求/响应面板的布局。您可以在顶部/底部,左/右拉开
或在选项卡中查看 HTTP 消息。 Action

此子菜单包含相同的选项,可在通过请求和响应消息编辑器的上下文菜单。

Sequencer

Burp Sequencer 是一种用于分析数据项的一个样本中的随机性质量的工具。你可以用它来测试应用程序的 session


tokens(会话 tokens)或其他重要数据项的本意是不可预测的,比如反弹 CSRFtokens,密码重置 tokens 等。

Using Burp Sequencer

Burp Sequencer 是一种用于分析在应用程序的会话 tokens,并且意图是不可预测的其他重要数据项的随机性质量的


工具。
使用 Sequencer 可能会导致在某些应用中意想不到的效果。直到你完全熟悉它的功能和设置,你应该只使用 Burp
Sequencer 对非生产系统。

要开始去了解 Burp Sequencer,执行以下步骤:

1)首先,确保 Burp 已安装并运行,您已配置您的浏览器 Burp 的工作,并且您已经浏览你的目标应用程序来填充你的代理服务器的历


史。 2)发现发出会话 tokens 或其他类似的项目,无论是在 Set-Cookie 头,在一个表单域,或其他地方的代理史上的一个回应。
使用上下文菜单中发送的内容到 Sequencer。 3)转到 Sequencer 选项卡,然后再选择“live capture(现场捕获
请求)”,选择你刚才发送的项目。
4)在“Token Location Within Response(tokens 位置在回应)”部分,选择在 tokens 出现的响应
的位置。如果标记出现在自定义位置(即不是在一个 Set- Cookie 头或表单域) ,然后选择“Custon location(自定
义位置)”选项,然后在对话框中,选择响应 tokens,然后单击“确定” 。

5)在“Select live Captrue Request(选择现场捕获请求)”部分中,单击“Start live capture(开始实时捕


获)”按钮。这将导致 Burp 反复发出原始请求, 并 extract(提取)所有在响应收到的 tokens。实时捕获会话打开一个新窗口,显
示捕获的进度,并已获得的 tokens 数量。当几百 tokens 已获得,暂停实时捕获会话, 然后单击“Analyze now(立即分
析)”按钮。
6)当分析完成后,会显示出随机性测试的结果。这表明样品中整体摘要,并附有详细的结果为每种类型进行了测试。有简短的文档,结果自己在每
个测试。在某些情况下,你可能已经获得 tokens 的一个合适的样本。您可以手动加载此样品为 Sequnecer,并执行相同的分析。
要做到这一点,在主 burp 的 UI ,转到序选项卡, 然后手动加载子选项卡。您可以从剪贴板粘贴标记,或从文件中加载它们,并使用
“Analyze now(立即分析)”按钮,开始装载样品的分析。

Randomness Tests

Burp Sequencer 采用标准统计测试的随机性。这些都是基于对测试的证据试样的假设,并计算发生的观测数据的概率,假设


该假说是真实的原则:

Character-Level Analysis

字符级测试在其原始形式 tokens 的每个字符位置进行操作。首先,字符设置在每个位置的大小进行计数- 这是出现在每个位置上的


取样数据中的不同的字符的数目。然后,下面的测试是使用此信息来进行:
Character count analysis - 此测试可分析 tokens 内使用在各位置中的字符分配。如果样品是随机生成的,所
用的字符的分布可能是近似均匀的。在每个位置上,该测试计算,如果 tokens 是随机产生所观察到的分布的概率。
Character transition analysis - 此测试可分析样品中的连续符号之间的转换。如果样品是随机生成的,一个字符出现在一个
给定的位置,同样可能被随后的下一个标记由一个用于在该位置上的字符中的任何一个。在每个位置上,该测试计算,如果 tokens 是随机
产生的观察到的转换的概率。
基于上述试验,character-level analysis(字符级分析)计算整体分数,每个字符位置- 这是在每个位置由每个字符级测
试的计算的最低概率。分析然后计数的有效熵各种显着性水平的位的数目。根据它的字符集的大小,每个位置被分配一个号码的比特(如果有
4 个字符,3 位,如果有 8 个字符等 2 位),并且比特的总数等于或高于每显着性水平进行计算。

Bit-Level Analysis

Bit-level test(位级测试)是比字符级测试功能更强大。启用位级的分析,每个 tokens 被转换成一组比特,与由字符集的每


个字符位置的大小来确定的比特的总数。如果任何职位聘用,其大小不是 2 的圆形电源的字符集,在该位置的样本数据被转换成其大小是两个
最接近的较小的圆形电源的字符集。在该位置的数据的部分比特被有效地合并成从该位置所产生的全部位。这个翻译是在被设计为保留原始样
本的随机性特点,不会引入或移除任何偏见的方式进行。然而,这种类型的没有进程可以是完美的,它很可能与分析非圆字符集大小的样本将介
绍一些不准确到分析结果的过程。当每个 tokens 已被转换成一个比特序列,下面的测试是在每个
位的位置进行:

FIPS monobit test - 此测试分析的 1 和 0 的每个位的位置分布。如果样品是随机产生的,1 和 0 中的数量很可能是


近似相等的。在每个位置上测试计算,如果 tokens 是随机产生所观察到的分布的概率。对于每一个进行的,除了报告中出现的观测数据
的概率 FIPS 测试,Burp Sequncer 也记录是否每一位通过或失败的 FIPS 测试。请注意,通过 FIPS 标准重新调整
Burp Sequencer 内任意样本量的工作,而正式规范的 FIPS 测试假定恰好 20,000tokens 的样本。因此,如果你
希望得到的结果是严格符合 FIPS 规范,你应该确保你使用的 20,000tokens 的样本。
FIPS poker test - 该测试将所述位序列中的每一个位置转换成的四个连续的, 非重叠的组,并导出一个 4 位的数量从每个组。
然后计算每个出现 16 个可能的数字的数,并进行卡方计算来评估这样的分布。如果样品是随机生成的,四比特数的分布可能是近似均匀的。在
每个位置上,该测试计算,如果 tokens 是随机产生所观察到的分布的概率。
FIPS runs tests - 该测试将所述位序列中的每一个位置转换成连续的位具有相同值的运行。然后计算试验次数为
1,2,3,4,5,和 6 及以上的长度。如果样品是随机生成的,运行与每个这些长度的数量很可能是由样本集的大小所确定的范围之内。在

每个位置上,该测试计算发生,如果 tokens 是随机观察到的运行的概率。FIPS long runs test - 这个测试测量位在每个位


的位置值相同的最长运行。 如果样品是随机生成的,最长的运行很可能是由样本集的大小所确定的范围之内。在每个位置上,该测试计算,如果
tokens 是随机产生所观察到的最长的概率。需要注意的是符合 FIPS 规范这个测试仅记录失败,如果位的最长过于漫长。然而, 位过
于短最长也表明,样品是不是随机的。因此,某些位可能录得显着性水平是低于 FIPS 传递,即使他们没有严格失败的 FIPS 检验水平。
Spectral tests - 该测试执行在每个位置上的比特序列的复杂的分析,并能够识别非随机性的证据表明,通过其他的统计测试的
一些样品中。测试工程通过比特序列以及将每个系列的连续的数字作为一个多维空间的坐标。它绘出的点在此空间由这些坐标来确定每个位置。
如果样品是随机生成的,点此空间内的分布可能是大致均匀;在该空间内联网的外观表示该数据很可能是不随机的。在每个位置,测试,计算所观
察到的分布存在的,如果 tokens 是随机的概率。该试验重复进行多种尺寸的数目(1〜8 位)和用于多个号码的尺寸(2 至 6)。
Correlation test - 其他各个位级测试工作在采样 tokens 中的各个位的位置, 所以随机性的每个位的位置量计算隔离。
仅执行这种类型的测试将防止随机性的 tokens 作为一个整体金额的任何有意义的评估:包含在每个位置相同的位值标记的样本可能会出现
含有比含有不同的值更短的标记的样品更多的熵在每个位置上。
因此,有必要以测试在 tokens 内的不同的位位置中的值之间的任何统计学显著关系。如果样品是随机生成的,在给定的比特位置处的值
是同样可能伴随着一个或一个零在任何其它位的位置。在每个位置上,这个测试与计算在出现的其他位置位观察,如果 tokens 是随机的
关系的可能性。为了防止任意的结果,当两个比特之间观察到一定程度的相关性,该测试调整,其显着性水平下是基于所有其他位级测试的位的
显着性水平。
Compressoion test - 其他各个位级测试工作在采样 tokens 中的各个位的位置,所以随机性的每个位的位置量计算
隔离。仅执行这种类型的测试将防止随机性的 tokens 作为一个整体金额的任何有意义的评估:包含在每个位置相同的位值标记的样本可
能会出现含有比含有不同的值更短的标记的样品更多的熵在每个位置上。因此,有必要以测试在 tokens 内的不同的位位置中的值之间的
任何统计学显著关系。如果样品是随机生成的,在给定的比特位置处的值是同样可能伴随着一个或一个零在任何其它位的位置。在每个位置上,
这个测试与计算在出现的其他位置位观察,如果 tokens 是随机的关系的可能性。为了防止任意的结果,当两个比特之间观察到一定程度
的相关性,该测试调整,其显着性水平下是基于所有其他位级测试的位的显着性水平。

Samples

在一个应用程序的令牌进行随机试验中,首先有必要获得这些令牌的合适的样品。这可以通过两种方式来完成:通过直接从目标进行标记的

自动 live capture(实时捕捉),或通过 Manually loading(手动加载)令牌,你已经取得的样本。Live

Capture

要进行 live capture(实时捕捉),你需要找到一个返回响应的地方,你要分析的 session token(会话令牌)或其他项


目的目标应用程序中的请求。您可以选择在任何地方 Burp 的请求,然后从上下文菜单中选择“Send to sequencer(发送
到音序器)”选项做到这一点。需要对这个请求来配置实况采集的步骤如下所述。 i)Select Live Capture Request
- 实时捕获请求列表中显示已发送到音序器从其他 burp 工具的要求。选择返回你想要分析的标记或其他项目的要求。

ii)Token Location Within Response - 选择令牌出现的应用程序的响应中的位置。下列选项可用: cookie - 如果响应设


置的任何 cookie,这个选项可以让你选择一个 cookie 来分析。这是通过会话令牌给客户的最常用方法。 Form field - 如
果响应包含任何 HTML 表单字段,这个选项可以让你选择一个表单字段的值来分析。这种方法通常用于发送反 CSRF 令牌和其它每页
令牌提供给客户。

Custom location - 您可以使用此选项来包含要分析的数据的响应中指定一个特定的自定义位置。这是通过使用响应提取规


则对话框。
iii)Live Capture Options

这些设置控制用于执行实时捕捉时发出 HTTP 请求和收获令牌发动机。下列选项可用: number of threads(执行绪数


目) - 此选项控制并发请求数的实时捕捉,却可以使。 Throttle between requests(请求之间的节流)- 可选的,实时
捕捉每一个可以请求之前等待一个指定的延迟(以毫秒为单位)。此选项很有用,以避免超载应用程序,或者是更隐蔽。 Ignore
token whose length deviates by x characters 忽略令牌,其长度偏差的 X 字符- 您可以选择配置的
实时捕捉忽略的令牌,其长度与平均长度令牌偏离给定的阈值。这可能是有用的,如果应用程序偶尔会返回一个包含在令牌通常出现的位置不同
项目的异常反应。

vi)Running the Live Capture

当你已经完全配置的 live Capture(实时捕捉),点击“开始实时捕获”按钮开始实时捕捉。 burp 序会反复发出您的请求,并


从应用程序的响应提取相关的令牌在实时捕捉,一个进度条显示,有令牌,请求和网络错误次数的计数器。下列选项可用:

Pause/resume(暂停/恢复) - 这将暂时停顿,然后继续,捕捉。

Stop(停止) - 这会永久停止捕获。副本令牌- 这会将当前拍摄的令牌到剪贴板, 以便在其他 burp 攻击(如入侵者有效载荷)或工具


的使用。

Save tokens(保存 tokens) - 这节省了当前拍摄的令牌文件。

Auto-analyze(自动分析) - 如果启用此选项,burp 就会自动进行标记分析,并定期更新结果现场采集过程中。

Analyze now(现在分析) - 这是时可用最少 100 令牌已被抓获,并导致 burp,分析当前采样和更新的结果。

Manual load

此功能允许你加载 Sequencer 与您已获得令牌的样本,然后进行统计分析的样本。 要执行手动负载,您首先需要通过一些手段,比


如你自己的脚本或从较早的 live captrue 实时捕捉,输出,或 Intruder attack,以获得自己的目标应用程序令牌的样本。
令牌需要在一个简单的换行符分隔的文本格式。使用粘贴按钮,从剪贴板粘贴,或 Load 按钮的标记,从文件中加载它们。加载令牌,再加
上最短和最长长度的详细情况,将显示您感,检查样品已正确装入。
要执行加载令牌的分析,请单击“analyze now(立即分析)”按钮。

Analysis Options

在“analysis options(分析选项)”选项卡允许您配置如何 Token Handled, 并在分析过程中都进行哪些类型


的测试。 Token handling
令牌过程中如何分析处理这些设置控制。下列选项可用: Pad short tokens at start/end(垫短令牌在开始/结束) -
如果由应用程序产生的标记具有可变长度,这将需要被填充,以使将要进行的统计检验。您可以选择是否填充应在开始或每个标记的结尾被应用。
在大多数情况下,填充令牌在开始是最合适的。 Pad with(垫) - 您可以指定将用于填充字符。在大多数情况下,对于数字或
ASCII 十六进制编码的令牌,填充与“0”字符是最合适的。 Base64-decode before
analyzing(base64 解码分析之前) - 如果令牌是 Base64 编码,可以配置 Burp 分析,这将普遍提高在编码分析之前
的准确度。 Token Analysis
这些选项控制所执行分析的类型。您可以单独启用或禁用每种类型的字符级和位级测试。有时候,启用所有测试进行了初步分析后,您可能需要

禁用某些测试,以反映您更好的了解所标记的特点,或以隔离受您的样品表现任何不寻常的特性的影响。 在结果窗口中,修改任何的分析选项后,

您可以点击“重做分析”按钮,您的新 设置重新进行了分析,并更新结果。

Result

Summary

summary 选项卡是看获得有关随机性样品中的程度的总体结论首位。它包括一个图表,显示的有效熵以上各显着性水平的位的数
目。这提供了一个直观的判决用来传递随机性测试不同的可能显着性水平的位的数目。该标签还报告了结果的可靠性的估计值,是根据样本的
数量。

Character-level analysis
人物层次的分析选项卡显示所有字符级测试结果摘要,并让您深入到每个字符级测试的细节。它也包含图表显示的字符集在每个位置的大小,
并且熵的比特可以
从每个字符位置来提供的最大数量。 注意,字符级测试是不可靠的,如果所采用的字符集的大小过大相对于样本的数目。例如,如果一个令牌采
用了 64 个不同的字符在每个位置,你只捕获 100 个样品还有隔靴搔痒的样本数据得出关于角色分配的任何可靠的结论。出于这个原因,
当存在的不可靠的结果的危险,burp 序将自动禁止字符级测试,以防止破坏整体合并结果从分析的字符级的结果。

Bit-level analysis

该位层次的分析选项卡中显示了所有位级的测试结果摘要,并让您深入到每一个位级测试的细节。这可以让你获得样品的性能有更深的了解,
找出任何异常的原因,并评估令牌预测的可能性。还有一个图表,显示位贡献的令牌中的每一个字符的位置的数目。这将使你的令牌中交叉引用
各个位回到原来的字符位置,如果你需要。

Analysisi options

分析选项卡显示已配置的分析的选项。如果需要重新进行分析,您可以修改这些

Decoder

Burp Decoder 是一种用于将编码数据纳入其规范形式,或将原始数据转换成各种编码和哈希表的简单工具。它能够智能地识别多


种编码格式采用启发式技术。

Loading Raw Data

您可以将数据加载到解码器在两个方面:
键入或直接粘贴到顶部编辑器面板。选择数据中 burp 的任何位置,然后从上下文菜单中选择“发送到解码器”。您可以使用“文
本”和“十六进制”按钮来切换编辑器的类型来对数据使用。

Transformations

转换不同的变换可以应用到的数据的不同部分。下面的解码和编码操作可用: 1)Url 2)HTMLBase64 3)十六进制


4)ASCII 码 5)八进制 6)二进制 7)GZIP 等各种常用的散列函数是可用的,取决于你的 Java 平台的功能。

Working manually

要进行手动解码和编码,使用下拉列表选择所需的变革。所选择的转型将被应用到选定数据,或整个数据如果没有被选中。

Smart decoding

在解码器内的任何面板,您可以点击“智能解码”按钮。然后 Burp 将试图通过寻找出现在可识别的格式,例如 URL 编码或


HTML 编码要编码的数据来智能地解码该面板的内容。递归执行这个动作,一直持续到没有进一步的识别的数据格式检测这个选项可以是
一个有用的第一步,当你已经确定了一些不透明的数据,并想快速浏览一下,看看是否可以很容易地解码成更容易识别的形式。应用到数据的每
个部分的解码是使用通常的着色表示。因为 Burp 解码器,使一个“最佳猜测”尝试识别一些常见的编码格式,它有时会犯错误。发生这种
情况时,你可以很容易地看到所有参与解码的阶段,及已被应用在每个位置上的转变。使用手动控制则可以手动修复任何不正确的转换和手动或
巧妙继续解码从这点。

Comparer

Burp 的 Comparer 是执行任何两项数据之间的比较(视觉“diff(差异)”)一个简单的工具。对 Burp 的


Comparer 一些常见用途如下:
当寻找的用户名枚举的条件下,您可以使用有效和无效的用户名比较响应登录失败,寻找在反应细微的差别。当 Intruder 袭击已导
致不同长度的比基反应一些非常大的反应,你可以比较这些
很快看到那里的分歧所在。当 comparing 的 site maps 或通过不同类型的用户生成的 Proxy history 条目,你可

以比较对类似的要求,看看那里的不同之处在于,为不同的应用程序行为引起的。 当测试使用布尔条件注射和其他类似的测试盲目 SQL 注入

漏洞,你可以比较两个反 应,看是否注射不同的条件已导致响应的相关差异。
Loading Raw Data

您可以将数据加载到 comparer 对以下方式: 它直接粘贴形成剪贴板。从文件中加载它。选择数据中 burp 的任何位置,然后从


上下文菜单中选择“发送到的 Comparer”。

Performing Comparisons

加载数据的每个项目显示为两个相同的列表。要进行比较,从每个列表中选择其他项目,并单击其中的“comparsions”按钮之一:
Word compare(字比较) - 这种比较 tokenizes 根据空格分隔每个数据项,并确定了改造的第一个项目进入第二所需的
标记级别的编辑。当在单词层面存在被比较项之间的有趣的差异,例如,在含有不同含量的 HTML 文档,是最有用的。 Byte
compare(字节比较) - 这种比较确定改造的第一个项目进入第二所需的字节级的编辑。当在字节水平存在比较项之间的有趣的差别,
比如在包含在一个特定的参数或 cookie 值稍有不同值的 HTTP 请求,这是最有用的。注意:该字节级的比较是相当多的计算密集的,
并且当一个字级别的比较失败,以确定在一个信息道的相关的差异通常应该只使用这个选项。当您启动一个比较,会出现一个新窗口,显示比较
的结果。该窗口的标题栏显示的差异(即编辑)这两个项目之间的总数。在两个主面板显示项目相比彩色化来表示每个修改,删除和改造的第一
个项目进入第二所需的加法。你可以在文本或十六进制形式查看每个项目。选择“sync views(同步视图)”选项可以使您同时滚动两
个小组等快速找出在大多数情况下有趣的编辑。

Extender

Using Burp extender

要使用 Burp extender 功能,需要一下几个步骤: 1.首先必须要有 java 环



2.在 Burp extensions 下单击 add 添加
3.选择查找.jar 后缀插件,点击确定之后下一步就是安装了 4.安装好了会提示安装成功,并且在如下
图中显示

5.如果是 python 扩展的话需要先到 options 中配置好 python 环境并且安装 jython 环境

Loading and managing extensions

下表显示了所有已安装的扩展名列表。您可以添加,删除和使用按钮的扩展表重新排序的扩展。请注意: 该扩展名的显示顺序是,其中的任

何注册的侦听器和其他推广资源将被调用的顺序。 扩展可以卸载,但保留在表中,以便能够方便重装稍后 time.To 切换扩展的负载状 态,


而不从列表中删除它,在“loaded”栏或扩展详细信息面板中单击该复选框。注意:您可以快速重新按 Ctrl +单击“loaded”复
选框的延伸。这将卸载并重新加载该扩展名,而不显示确认对话框。要运行用 Python 编写的扩展,你首先需要配置 Jython 的独立
JAR 的位置,在 Python 环境选项。
Extension details

选择在扩展表中的项目显示在下部面板的扩展信息。详细信息选项卡显示以下信息:无论是扩展当前加载的。您可以点击复选框,加载或卸
载选定的扩展。扩展名。扩展可以通过编程设置其显示在用户界面中自己喜欢的名字。您可以手动编辑如果需要此名称。扩展( Java 或
Python)的类型。从中加载该扩展名的文件。的方法,听众,并在由扩展使用其他资源的详细信息。输出选项卡包含扩展的标准输出流的
细节,以及错误选项卡包含有关标准错误流相同的信息。为每个数据流,可以配置应用程序的输出是否应该被定向到系统控制台,或者保存到文
件中,或者在 UI 中显示出来。请注意:写法基于 UI 的输出窗口有大小限制,不适合用于重型记录。扩展是负责指导他们的输出和错误消息,
其中 burp 已经分配给他们正确的数据流,并通过扩展 API 的编程可用。扩展不遵守这个可以直接直接输出到系统控制台,无论在这里具
体确定的设置。
Burp extender apis

此选项卡包含可用于创建 Burp extensions API 的细节。该列表显示,可在 Burpk 运行版本的 API。从列表中选


择一个接口的名称,显示界面代码全部。您还可以使用“save interface files(另存接口文件)”和“save
javadoc(保存 Javadoc 文件)”按钮来保存这些文件的本地副本,用于开发扩展的时候。

Options

Settings

此设置控制启动时 Burp 是如何处理扩展。当 Burp 启动时,它会自动恢复可扩展的配置清单。如果选择此选项,Burp 也将自动尝


试重新加载列表中的该被装在其发生时 Burp 是关闭任何扩展。

Java Environment

设置允许您配置环境执行的是用 Java 编写的扩展。如果您的扩展使用任何库, 你可以指定哪些库将被加载的文件夹。 burp 会搜


索这个文件夹中的任何 JAR 文件, 并且将在用于加载 Java 扩展类加载器的类路径中包括这些。
Python Environment

设置允许您配置环境执行的是用 Python 编写的扩展。使用 Python 扩展,您将需要下载的 Jython ,这是 Java 实现


的 Python 解释器。下列选项可用:在 Jython 的独立 JAR 文件的位置- 这是您已下载的 Jython 的位置。你必须下载的
Jython 的独立版本。文件夹中加载的模块- 此设置是可选的,可以用来指定从哪个 Python 解释器应该尝试加载所需要的您的扩展
模块的文件夹。如果配置,此选项会导致 Burp 来更新指定的位置了 Python 的 sys.path 变量。如果您已经创建了自己的一
套 Python 库在多个单独的扩展使用使用此选项很有用。 注意:由于在 Jython 中动态生成 Java 类的方式,您可能会遇到内存
问题,如果你加载多个不同的 Python 扩展,或者如果你卸载并重装一个 Python 扩展多次。如果发生这种情况,你会看到一个这样
的错误:java.lang.OutOfMemoryError: PermGen space You can avoid this problem by configuring Java
to allocate more PermGen storage, by adding a -XX:MaxPermSize option to the command line when
starting Burp.
例如:java -XX:MaxPermSize=1G -jar burp.jar(破解版本:java –XX:MaxPermSize=4G –jar
BurpLoader.jar)
Ruby Environment

设置允许您配置环境执行的是用 Ruby 编写的扩展。使用 Ruby 的扩展,你需要下载的 JRuby,这是 Java 实现的


Ruby 解释器。请注意,您可以在这里配置 JRuby 的 JAR 文件的位置,或者您也可以通过 Java 类路径在启动时加载的 JAR
文件。

Suite Options

Burp 含有大量的影响的所有工具的行为套房范围的选项。有如下选项:

Connections

此选项卡包含设置来控制 Burp platform authentication,upstream proxy


servers,SOCKS 代理,timeouts,hostname resolution,以及范围外的要求。

platform authentication

设置允许您配置 Burp platform authentication(平台自动)验证到目标 Web 服务


器。不同的认证方式和认证可以配置为单个主机。支持的认证类型有:Basic(基本的),NTLMv1,NTLMv2 身份验证和摘要
验证。域和主机名信息仅用于 NTLM 身份验证。在“Prompt for credentials on platform authentication failure(提
示平台上认证失败凭据)” 选项会导致 Burp 显示交互式弹出每当身份验证失败时遇到的问题。

Upstream Proxy Servers

设置控制 Burp 是否会向外发送请求到 Upstream Proxy Servers,或者直接到目标 Web 服务器。 您可以定义多个规则,指定不同的目标主

机或主机组不同的代理服务器设置。规则的应用 顺序,而目标 Web 服务器相匹配的第一条规则将被使用。如果没有规则匹配,burp 默认为直接的,非代


理连接。您可以在目标主机规范中使用通配符(*匹配零个或多个字符,而?除了点匹配任何字符)。将所有流量到一个单一的代理服务器,创建一个规则*为
目的主机。离开代理主机空白直接连接到指定的主机。对于您配置的每个上游代理服务器,如果需要,可以指定认证方式和认证。支持的认证类型有:基本的,
NTLMv1,NTLMv2 身份验证和摘要验证。域和主机名信息仅用于 NTLM 身份验证。
Socks Proxy

设置允许您配置 Burp 使用 SOCKS 代理的所有传出的通信。此设置是应用在 TCP 层,所有出站请求都将通过这个代理发送。


如果您已经为上游 HTTP 代理服务器配置的规则,然后请求到上游代理服务器将通过这里配置的 SOCKS 代理发送。如果“DNS
查询在 SOCKS 代理”启用该选项,则所有的域名将由代理解决。没有本地查询将被执行。

Timeouts

设置指定要用于各种网络任务的超时。您可以指定以下超时: Normal(正常) - 此设置适用于大多数网络通信,并确定长期 burp


怎么会放弃已经发生了超时的请求,并记录之前等待。 Open-ended responses(开放式的回应) - 此设置仅用于需要响应不
包含内容长度或传输编码的 HTTP 标头被处理的。在这种情况下,burp 确定该传输已经完成之前, 等待指定的时间间隔。 Domin
name resoolution(域名解析) - 此设置确定如何经常 burp 会重新执行成功的域名查找窗口。这应该被设置为一个适当的低
的值,如果目标主机地址被频繁地改变。 Failed domain name resolution(失败的域名解析) - 此设置确定 burp
多久将重
新尝试不成功的域名查找窗口。值以秒为单位。如果选项是空白的,然后 burp 永远不会超时的功能。

Hostname Resolution

设置使您可以指定主机名映射到 IP 地址,来覆盖你的电脑所提供的 DNS 解析。

每个主机名解析规则指定一个主机名,并应与该主机名关联的 IP 地址。规则可以单独启用或禁用。这个功能可能是有用的,以确保请求的正
确前进转发时,hosts 文件已被修改为从非代理感知厚客户端组件进行流量的不可见的代理。

Out-of-Scope Request

可用于防止 Burp 从发行任何超出范围的要求。当你需要保证没有请求做出不在范围的为你目前的工作目标,它可以是有用的。即使你


的浏览器使得对于超出范围的项目要求,即将卸任的请求将通过 Burp 被丢弃。您可以启用此功能为当前目标范围。或者,您可以使用

URL 匹配规则定义自定义范围。HTTP
Redirections

设置控制重定向的类型的 Burp 会在它被配置为跟随重定向的情况下理解。可以选择重定向的种类如下: 1)3xx status


code with location header 2)refresh header 3)meta refresh tag
4)JavaScript driven 5)与 Location 标头的任何状态码注意,Burp 在以下重定向到特定的目标行为是由每个单
独的 Burp 工具内设置(例如,根据目标范围内)来确定。
Streaming Responses

可以告知 Burp 哪些 URL 返回“流媒体”的反应,这不终止。然后 Burp 会不同于正常的反应处理这些反应。流式反应通常用于像


不断更新,现申请价格数据的功能。

Status 100 Responses

控制 Burp 处理与状态 100 的 HTTP 响应的方式。当一个 POST 请求发送到服务器, 这些反应常发生的,它使一个临时的响


应请求体已被发送之前。下面的设置: understand 100 continue response(了解 100 继续响应) - 如果选中
此选项, Burp 会跳过中期响应和解析真正的响应头像状态代码和内容类型的响应信息。 Remove 100 continue
headers 除去 100 继续头- 如果选中此选项,Burp 会在此之前被传递到单独的工具从服务器的响应中删除任何中期头部。

SSL Negotiation

有时候,你可能有困难的谈判与某些 Web 服务器的 SSL 连接。 Java 的 SSL 协议栈包含了几个小鬼,和失败与某些不寻常的


服务器配置工作。为了帮助您解决这个问题,Burp,您可以指定哪些协议和密码应该在 SSL 协商提供给服务器。下面的其他选项可用:自
动选择对谈判失败兼容 SSL 参数- 如果启用此选项,那么当 Burp 失败时使用配置的协议和密码进行谈判的 SSL ,它会探测服务器,
试图建立是由双方支持一组兼容的 SSL 参数服务器和 Java 。如果找到兼容的参数,Burp 缓存此信息,并使用在第一个实例中的参
数具有相同的服务器未来的谈判。这个选项通常是可取的,可避免需要解决 SSL 问题,并尝试使用协议和密码。启用阻止 Java 安全策略
的算法- 从 Java 7 的, Java 安全策略可以被用来从 SSL 协商被用于阻止某些过时的算法,以及其中的一些默认情况下(如
MD2 )受阻。现场许多 Web 服务器都使用这些过时的算法, SSL 证书,它是不可能使用默认的 Java 安全策略来连接到这些服
务器。启用此选项允许 Burp 在连接到受影响的服务器时使用过时的算法。对此选项的更改才会生效当您重新启动 Burp。允许不安全

的 SSL 重新协商- 此选项可能会使用一些客户端的 SSL 证书时,或试图周围其他的 SSL 问题的工作是必要的。SSL


Client SSL Certificates

允许您配置客户端 SSL 证书,当目标主机申请一个 Burp 会使用。您可以配置多


个证书,并指定每个证书应使用的主机。当主机请求的客户端 SSL 证书,Burp 会在列表中的主机配置匹配被连接的主机的名称中使用的
第一个证书。您可以在目标主机规范中使用通配符( *匹配零个或多个字符,而?除了点匹配任何字符) 。要使用一个证书,每当任何主机请求之
一,使用*作为目标主机。客户端证书支持以下类型:文件( PKCS # 12 ) - 你将需要配置的证书文件的位置和密码的证书。硬件令牌
或智能卡( PKCS # 11 ) - 你将需要配置 PKCS#11 库文件的位置,为您的设备,您的 PIN 码,然后选择从那些可用的证书。
该 PKCS#11 库文件是用软件为您的设备安装的本机代码文件。在 Windows 上,Burp 可以自动搜索常见位置找到您所安装
的库文件。

Server SSL Certificates

此信息仅面板包含从 Web 服务器接收到的所有的 X509 证书的详细信息。双击表格中的项目,以显示该证书的完整细节。

Session

此选项卡包含的设置 session handing rules,the cookie jar,and macros。

Session Handling Challenges

当执行任何类型的 Web 应用程序的测试,你可能会遇到与会话处理和地区的挑战。例如:该应用程序可终止被用于测试会话,无论是防守还

是其他原因,使后续 的请求是无效的,直到会话恢复。某些功能可能使用改变必须与每个请求(例如, 妨碍请求伪造攻击)提供的令牌。某些功能


可能需要一系列的要求被测试前,作出其他的请求,获取应用程序到一个合适的状态,它正在接受测试的要求。执行自动化测试任务,如起毛或扫
描时,可能会出现这些问题,当你手动测试也可能出现。 Burp 的会话处理功能包含一系列的功能,以帮助在所有这些情况下,让你继续你的
手动和自动测试,同时 Burp 需要在后台为你的问题的照顾。

Session Handling Rules

Burp 让你定义的会话处理的规则清单,让您非常细粒度地控制 Burp 处理应用程序的会话处理机制和相关的功能。每个规则包含


一个作用域(什么规则适用于) 和行动(什么规则呢) 。对于每一个即将离任的要求,即 Burp 它决定了所定义的规则在范围的请求,并执
行所有这些规则的行为的顺序(除非条件检查行动决定不采取进一步行动,应适用于要求提供) 。在范围内为每个规则可基于任何正在处理的
请求的下列功能或全部来定义:
Burp 工具发出的请求。
请求的 URL。的请求中参数的名称。每个规则可以执行一个或多个动作,例如: 更新 cookie 从 Burp 的蜜罐。验证当前会话。
运行宏(请求的预定义的顺序) 。通过创建不同的范围和行动多条规则,你可以定义行为的层次结构 Burp 将适用于不同的应用和功能。例
如,在一个特定的测试可以定义如下的规则:对于所有的请求从 Burp 的 cookie jar 添加 cookie。对于请求到特定的域,验证
当前会话与该应用程序仍处于活动状态,如果没有,运行宏在应用程序重新登录,并更新蜜罐用得到的会话令牌。对于请求到包含__
csrftoken 参数特定的 URL ,首先运行一个宏来获取有效__ csrftoken 价值,并提出请求时使用此。

Session Handling Tracer

需要申请 Burp 的会话处理功能,以对现实世界的应用程序的功能的配置往往是复杂的,并且就很容易犯错。您可以使用会话处理示踪


剂,以帮助您解决您的会话处理配置。示踪显示,已经由会话处理功能的处理(即,其中至少一个会话规则已经应用) 每个请求的列表。对于每
个处理请求,所述示踪剂表示规则和进行该操作序列,并且改变到在序列中的每个步骤中的电流要求而作出。请注意,会话处理示踪规定了所有
受影响的 HTTP 请求的处理和存储开销。您应该只与故障排除会话处理的规则问题,当使用的示踪剂,不应该离开它通常运行。

Cookie Jar

Burp 维护一个 cpploe 干罐,用于存储所有你访问的网站发出的 cookies 。密罐是所有 Burp 的工具之间共享。您可以


配置哪些工具 Cookie 罐应监测,以更新的 cookies 。默认情况下,蜜罐是基于代理和蜘蛛的工具流量更新。 Burp 监视由配置
工具接收到的响应,并更新蜜罐与设置任何新的 Cookie。在代理的情况下,从浏览器传入的请求也被检查。凡申请在前面设置一个永久性
的 Cookie 这是目前在您的浏览器,这是需要你的会话进行适当的处理,这是很有用的。有 Burp 更新基础上, 通过代理请求的蜜罐意
味着所有必要的 cookie 将被添加到蜜罐,即使你的应用程序当前访问期间不更新该 cookie 的值。您还可以查看手工蜜罐和编辑的
cookie 的内容,使用“打开蜜罐”按钮。蜜罐可用于会话处理的规则和宏来自动更新从蜜罐曲奇传出请求。蜜罐荣誉 Cookie 的域范
围,在模仿的 cookie 处理规格 Internet Explorer 的诠释方式。路径范围不兑现。

Macros

macro 是一个或多个请求一个预定义的顺序。您可以使用会话处理规则中的 Macro 来执行各种任务。典型用例的宏包括:获取


该应用程序(如用户的主页)的页面来检查当前会话仍然有效。进行登录,以获得新的有效的会话。获得令牌或随机数作为另一个请求中的参数
来使用。当 Scanner 或 fuzz(模糊测试)在一个多步骤的过程的请求时,执行必要的前述要求,以获得应用到其中的目标请求将被接

的状态。在一个多步骤的过程中,“attack”的请求时,在完成该过程的剩余步骤以确定所执行的动作,或者获得的结果,或者从该过程结束
时的错误消息后。以及请求的基本序列,每个宏包含一些关于如何饼干和参数的序列中应处理的重要结构和单件之间的任何相关性。
display

User interface

设置允许您控制 Burp 的用户界面的外观。您可以配置用于整个用户界面(除了 HTTP 消息的显示)的字体大小,也是 Java 的


外观和感觉。更改这些设置就会生效时 Burp 重新启动。

http message display

设置允许您控制 HTTP 消息会显示在原始的 HTTP 消息编辑器中。您可以设定字体和点大小和字体平滑是否被使用。您还可以配


置为请求参数和响应语法语法彩色化是否完成。有很多小伙伴说乱码,就在这里设置。

Character Sets

设置控制 Burp 显示原始的 HTTP 消息时如何处理不同的字符集。可用的选项有:

1)自动识别每个消息的字符集的基础上,邮件标题。这是默认选项,可让您同时在使用不同字符集的邮件的工作。 2)对所有消息使用平台默
认的字符集。 3)显示消息的原始字节(使用 ASCII 编码),而不处理任何扩展字符。 4)对所有消息使用一个特定的字符集。
HTTP 头始终显示在原料的形式- 字符集编码选项只适用于邮件正文中。需要注意的是所需的一些字符集的字形不支持的所有字体。
如果你需要使用一个扩展的或不寻常的字符集,你应该首先尝试进行系统的字体,如宋体或 Dialog。

HTML rendering

Html rendering 是 html 转义的意思,渲染 HTTP 消息编辑器显示 HTML 内容中标签约,因为它会出现在你的


浏览器。该选项控制 Burp 是否会作出所需要的完全呈现 HTML 内容(例如,用于嵌入式图像)的任何额外的 HTTP 请求。使用
此选项涉及的速度和 HTML 渲染质量之间的权衡,以及您是否希望避免作出任何进一步的请求到目标应用程序。

Misc 此选项卡包含的设置 hotkeys(热键),logging(记录),temporary files(临 时文件)的位


置,automatic backup(自动备份)和 scheduled tasks(预定的任务)。

Hotkeys

设置允许您配置快捷键为常用操作。许多类型的动作可以被分配一个快捷键, 在以下类别: 1)特定于某个 HTTP 请求或响应的动作,


例如“send to repeater(发送到转发器)”。 2)全球行动,如“Switch to proxy(切换到代理服务器)”。 3)在
编辑操作,如“剪切”和“撤消”。
一些热键的默认配置。需要注意的是如果你使用它们频繁,可以给它们分配一
个快捷键。
所有的快捷键必须使用控制键(或在 OSX 上的 Command 键),也可以使用 Shift 和其他可用的修饰符。请注意,在某些
Windows 安装中的 Ctrl + Alt 组合是由 Windows 视为等同于键 AltGr,并可能导致输入的字符时,在文本字段中
压显现出来。

Logging

设置控制 HTTP 请求和响应的记录。可以记录每个工具或所有 Burp 流量进行配置。选择你要记录的,会弹出一个框让你选择保存


的地方,可以在扫描的时候把扫描的一些扫描记录下来,然后放到 sqlmap 里进行跑,很淫荡的想法。

Temporary Files Location

保存一些零时文件的地方,可以设置系统默认,也可以自定义路径。
Automatic backup

自动备份功能。设置允许您配置 Burp 保存的所有工具'的状态和配置的备份每隔多少分钟,并且还可以选择退出。

使用这些选项意味着你一般都会有你的工作,最近的备份副本在 Burp 异常退出的事件。如果您已配置目标范围为你的工作,你可以使用


“include in-scope items only(仅仅包括在范围内的项目)”以减少数据必须保存量。
Scheduled Tasks

计划任务。仅限专业版使用,您可以使用任务调度程序自动启动和停止某些任务在规定的时间和间隔时间。您可以使用任务计划程序来启动
和停止某些自动化任务了几个小时,而你没有工作,并定期或在特定时间保存您的工作。要使用此功能请选择在 Burp 的任何地方一个
HTTP 请求,或任何部分目标站点地图,并在上下文菜单中的“Engagement(参与工具)”中选择“Schedule
task(计划任务)” 。或者您也可以通过在计划任务面板中直接添加一个新的任务。创建一个新的任务将打开一个向导,可以配置任务的详
细信息。
任务计划有以下类型: 1)从 URL 扫描 2)暂停主动扫描 3)继续主动扫描 4)从 URL 蜘蛛 5)暂停蜘蛛 6)保存状态根据任务的类
型,您还可以配置一个 URL (如扫描)或文件(如保存状态) 。每一个任务需要有配置了启动时间。或者,您可以配置任务重复在定义的时间
间隔

Suite functions

Generate CSRF POC

[专业版]此功能可用于生成一个证明了概念验证(PoC )跨站点请求伪造(CSRF )攻击对于一个给定的请求。要使用此功能,请


选择在 Burp 的任何地方 URL 或 HTTP 请求,并选择上下文菜单中的“Engagement tools(参与工具)”中的
“Generate CSRF Poc(生成 CSRF 的一键通)”。
Burp 显示了在顶部面板中选择的完整的请求,并将生成的 HTML CSRF 在较低的面板。在 HTML 使用的形式和/或
JavaScript 来生成在浏览器中所要求的请求。您可以手动编辑的要求,并单击“regenerate(重新生成)”按钮,根据更新的要
求来重新生成 CSRF 的 HTML 。你可以测试生成的 PoC 的效果在浏览器中,使用“测试中的浏览器”按钮。当您选择此选项,可
以粘贴到浏览器(配置为使用 Burp 的当前实例作为其代理)一个唯一的 URL 。由此产生的浏览器请求由服务 Burp 与当前显

You might also like