• 主页
  • 系列总集
  • OpenCV
  • CMake
  • iOS
  • Java
  • 前端
所有文章 关于我

  • 主页
  • 系列总集
  • OpenCV
  • CMake
  • iOS
  • Java
  • 前端

Web安全学习工具准备和填坑

2016-03-05

硬件软件准备

电脑用的是Macbook,所以基本都是在Mac上的软件.软件上需要准备的JDK的Java环境.

抓包工具Charles

抓包工具用的是Charles,遇到的坑的问题就是抓不到本地的包,后来找到了解决方法,写在我Blog另外一个文章里

渗透工具BurpSuite

BurpSuite是个可视化界面的渗透工具,本身是个.jar包,详细的可以看Wooyun网教程,下面讲讲其中用到的四个主要功能.

Proxy代理

这个是拦截的基础,只有将浏览器的代理服务器指向Burp才能拦截(Intercept)所有的请求和返回,其中三个最关键的选项

  1. Proxy Listenters: 设置代理服务器的地址和端口
  2. Intercept requests based on the following rules: 拦截请求
  3. Intercept responses based on the following rules: 拦截返回

可以在Intercept选项卡中看到时实的报文,在HTTP history中可以看到记录

Repeater转发

有时候Intercept一个请求,并不想放它过去,而是想对其中的参数进行调试,从而观察不同的情况,此时可以在Intercept的选项卡中点Action(或者右键)然后Send to repeater.

在Repeater中修改参数,然后点击Go,就可以看到返回报文,要是想在浏览器中打开可以右键点击报文区域在选项卡中选”show response in browser”就可以看到返回的结果.

Intruder侵入

Intruder虽然英文翻译叫侵入,实际是爆破工具,可以穷举某个参数,其中有四个Attack Type.

  • Sniper: 狙击手模式,针对一个参数用一个方法进行穷举
  • Battering ram: 攻城槌,针对一组参数用同一个方法进行穷举
  • PitchFork: 干草叉,针对一组参数各自用不同种的方法进行穷举
  • Cluster bomb: 集束炸弹,针对一组参数用不同种方法遍历进行穷举

除了Sniper之外以两个参数,10种可能性进行举例,Battering ram是10次,PitchFork也是10次,而Cluster bomb则是100次.

在Intruder选项卡的Options选项中,可以进行Number of threads进行线程设置,而且攻击后的结果可以排序和搜索

Spider蜘蛛

虽然单词是蜘蛛,但是中文更多叫爬虫,可以用于爬虫目录结构,或者XSS漏洞,但是一般爬取目录为主,对XSS漏洞能力较弱.

但是如WebGoat的最后一课,莫名其妙出现的source?source=true这种没有链接路径的页面爬虫也很难自动获取到,除非规定的爬虫字典里有source.

集成渗透环境Kali

除了渗透工具之外,还有好多工具因为版本比较老,或者收集困难,所以有组织单独开发了集成渗透环境,一般都是一个Linux虚拟机,其中以Kali最为出名.

在Mac上使用的是Parallels Desktop虚拟机来安装Kali,讲其中遇到的两个大坑

Parallels Tools在Kali中安装不上

由于Kali是基于Debian修改的内核,Parallel Tools并没有单独对其开发Paralles Tools,导致很多时候安装会有问题.

安装Kali的过程中会让你设置Root用户密码,安装完毕Username就是root,密码为你设置的

Permission deny

虚拟机加载了Parallel tools镜像之后执行安装指令”./install”提示没有权限,需要将所有安装文件拷贝到一个有权限的目录才行

 cd /media/cdrom0
 cp -r install installer/ kmods/ tools/ version /tmp
 cd /tmp
 ./install

或者是使用Parallels tools提示的方法,手动重新加载光盘镜像

 umount /media/cdrom0
 mount -o exec /media/cdrom0
 ./install

注意!以上的所有操作都是基于Root用户才行,一般来讲Kali安装后都是Root用户

Install manual

运行安装指令之后有时会提醒缺少某些安装包,需要你手动安装,出现这种问题的原因是Kali镜像中某些库的版本和Parallels能识别的版本不统一,只能通过一个库管理工具apt-get来手动更新.

0) Verify that the repositories for kali are correct:
>more /etc/apt/sources.list
deb http://http.kali.org/kali kali-rolling main contrib non-free
# For source package access, uncomment the following line
# deb-src http://http.kali.org/kali kali-rolling main contrib non-free

1) >apt-get clean
2) >apt-get update
3) >apt-get upgrade -y
4) >apt-get dist-upgrade -y
5) restart

但是这里有个问题就是,国外这个apt的源”http.kali.org/kali”实在是太慢了,可以尝试更改source文件为国内的源,比如中科大的.

cd /etc/apt/
mv sources.list sources.list.backup
vim /sources.list

然后更改内容为其中一个

#中科大kali源
deb http://mirrors.ustc.edu.cn/kali sana main non-free contrib
deb http://mirrors.ustc.edu.cn/kali-security/ sana/updates main contrib non-free
deb-src http://mirrors.ustc.edu.cn/kali-security/ sana/updates main contrib non-free
#阿里云kali源
deb http://mirrors.aliyun.com/kali sana main non-free contrib
deb http://mirrors.aliyun.com/kali-security/ sana/updates main contrib non-free
deb-src http://mirrors.aliyun.com/kali-security/ sana/updates main contrib non-free

更改完源之后一定要重新Clean/Update/Upgrade

把Kali中的软件更改为破解版

就拿BurpSuite来讲,Kali中带的是免费版,多了很多功能限制,我可以从外部下破解版的然后替换掉原来的文件,Kali的BurpSuite安装在/usr/bin目录.

  1. I navigated to /usr/bin and selected burpsuite.
  2. I right-clicked and renamed burpsuite to burpsuite(old).
  3. I copied the jar I just downloaded into /usr/bin.
  4. I right-clicked and renamed the jar to burpsuite.
  5. In the Permissions tab select Allow executing file as program.
  6. Hit close.
赏

请问老板还招人么(/ω\)

支付宝
微信
  • Web
  • Security
  • Tutorial

扫一扫,分享到微信

微信分享二维码
RPC/Netty/Dubbo的大致概念
Proxy机制和反向代理的意思
© 2021 Alan Li
Hexo Theme Yilia by Litten
  • 所有文章
  • 关于我

tag:

  • iOS
  • Java
  • Collection
  • Python
  • Shell
  • CMake
  • Memory
  • JavaScript
  • Architecture
  • AnchorPoint
  • Android
  • Web
  • Annotation
  • AFNetworking
  • Window
  • ViewController
  • AutoLayout
  • Dozer
  • CoreAnimation
  • Cycle Retain
  • Block
  • UI
  • IDE
  • FrontEnd
  • CSS
  • Category
  • TableViewCell
  • Security
  • Net
  • JSP
  • Spring
  • C
  • MyBatis
  • Date
  • React
  • GCD
  • UITouch
  • Gesture
  • UIControl
  • Git
  • HTML
  • HTTPS
  • HTTP
  • Servlet
  • Server
  • DataBase
  • MySQL
  • Linux
  • Tutorial
  • Ajax
  • Type
  • JQuery
  • JSON
  • Exception
  • Parameter
  • Reflect
  • Thread
  • Sort
  • KVO
  • MKMapKit
  • Overlay
  • Maven
  • Configure
  • Tips
  • Transaction
  • Swift
  • NavigationBar
  • Nginx
  • Runtime
  • OpenCV
  • Property
  • Playground
  • Protocol
  • Redux
  • ScrollView
  • Session
  • Cookie
  • Shiro
  • Error
  • Singleton
  • RegEx
  • StackView
  • StatusBar
  • Base64
  • Socket
  • TCP
  • IP
  • TextField
  • CALayer
  • UILabel
  • View
  • Animation
  • Xcode
  • Hexo
  • Terminal
  • OC
  • Device
  • Log
  • Image
  • JUnit
  • Oval
  • Archive
  • XSS
  • Compiler
  • Aspect
  • Responder
  • Class
  • FireWall
  • RetainCount
  • Const
  • Frame
  • String
  • Symbols
  • Framework
  • CocoaPods
  • Unity
  • Message
  • Button
  • AuthorizationStatus
  • Struct
  • XCTest
  • NSNotification
  • Contact

    缺失模块。
    1、请确保node版本大于6.2
    2、在博客根目录(注意不是yilia根目录)执行以下命令:
    npm i hexo-generator-json-content --save

    3、在根目录_config.yml里添加配置:

      jsonContent:
        meta: false
        pages: false
        posts:
          title: true
          date: true
          path: true
          text: false
          raw: false
          content: false
          slug: false
          updated: false
          comments: false
          link: false
          permalink: false
          excerpt: false
          categories: false
          tags: true
    

我写的,大概率是错的。。。。。