使用BP和Hydra爆破相关的服务
hydra:九头蛇,开源的功能强大的爆破工具,支持的服务有很多,使用hydra爆破c/s结构的服务,使用bp爆破web登陆窗口
爆破需要的几个条件,爆破工具+字典
字典:就是一些用户名或口令,弱口令、使用社工软件生成的集合

BP爆破步骤,单向爆破
1,拦截数据包,将拦截的数据包发送到intruder模块
2,在intruder模块,进入positions选项卡下,点击clear取消自动选择的爆破对象,然后选中需要爆破的值,点击add,例如password=xxx,在爆破过程中,使用字典替换xxx
3,进入intruder模块的pyloads选项卡,找到payload options [simple list]区域,点击load,找到字典位置,加载密码字典
4,进入Intruder模块的options选项卡下,设置需要的规则,如线程、grep-match匹配规则,grep-extract排除规则
5,回到pyloads选项卡下,点击start attack开始爆破,或者在positions下也有开始爆破
6,爆破结束之后,点击length,对结果进行排序,放在前几排的测试结果,可能是成功的结果

如何快速定位爆破的正确结果
1,需要知道登陆成功之后返回来的字符串,如welcome
2,可以在爆破结果窗口的Options选项卡中的,匹配规则“grep-match”下添加,在results中字符下有选中的就可能是正确结果

BP爆破步骤,多项爆破
1,拦截数据包,发送数据包步骤同单向一样
2,在intruder模块下的,进入Positions选项卡下,选择需要爆破的多项值,点击add,例如username=xxx,password=xxx,然后attack type攻击类型下,选择cluster bomb模式
3,进入intruder模块下,进入payloads选项卡下,paload sets下payload set选择“1”,paload type选择需要的攻击载荷类型,simple list就是字典模式,然后在下边的payload options[simple list]区域下,加载需要的字典,此处加载的user字典,因为payload set 选择的1,就是自己第一个添加add的值,然后paload set 选择 “2”,字典加载密码字典

Hydra爆破SSH/FTP等服务
1,hydra -h 查看帮助信息,爆破单向
hydra -l 用户名 -P大写 密码字典 ftp://ftpip
hydra -l 用户名 -P大写 密码字典 ip ftp
-l,表示知道爆破账号
-P大写,后跟密码字典路径

Hydra多项爆破
hydra -L 用户字典 -P密码字典 服务://ip
-L大写,后跟用户字典
-P大写,后跟密码字典

Hydra常用命令
hydra -L logins.txt -P PWS.txt -Mtargets.txt ssh
hydra -l admin -p password ftp://192.168.1.0/24
-p指定密码
如果爆破的服务修改了端口,使用-s指定需要的端口

JS运算符
常规运算符
加+
减-
乘*
除/
取余%
自增++
自减--

赋值运算符
赋值=
+= a+=3 等于 a=a+3
-= a-=3 等于 a=a-3
*= a*=3 等于 a=a*3
/= a/=3 等于 a=a/3
%= a%=3 等于 a=a%3

字符串链接符号
+
a="wo" b="sym" c = a+b 就是 ‘wo sym’
a=10 b='string' c=a+b 就是输出 '10string'

JS比较运算符
等于==,只比较大小,不比较类型
绝对等于===,会比较类型
不等于!=
不绝对等于!==
大于>
小于<
大于或等于 >=
小于或等于 <=

逻辑运算符
and &&
or ||
not !

条件判断语句
if(条件=true){语句体}
if(条件为真执行1否则执行2){语句体1}else{语句体2}
if(条件1){语句体1}else if(条件2){语句体2} else{语句体3},条件1满足执行语句体1,否则判断条件2是否满足,满足执行语句体2,否则执行语句体3
switch(结果){ case 1:代码1 break; case 2: 代码2 break; default:代码3},首先设置一个结果,随后case下代码写满足结果时候执行的代码,default为case都不满足的时候执行

js循环
for循环
for(开始前执行;执行时条件:循环后执行){语句体},第一部分开始前执行的可以在外边声明好,但是;分号不能少,循环后执行部分可以在语句体执行之后写出来,前边的;分号不能少
var x ,对象
如果需要遍历对象的话,使用for in来遍历,for( x in 对象){print+=对象【x】;}

while循环
while(条件){代码},先去判断条件
do{代码} while(条件),先去执行语句体,再去判断条件

Break 和 Continue 语句
break:跳出整个循环
continue:跳出满足条件时候的循环,然后继续循环

js判断数据类型
typeof操作符来判断数据类型,array数组本质也是对象

banner信息收集
banner信息,就是欢迎语,在banner信息中可以得到软件开发商、软件名称、软件版本、服务等信息,通过这些 信息可以使用某些工具去使用相对应的exp去进行攻击
前提条件,需要和目标建立链接,只有建立了链接才能获取对应的banner信息,目标服务器上可能队banner信息进行了隐藏或禁止读取

收集方式:
1,使用NC(netcat,瑞士军刀)
nc -nv ip 端口
-n 表示以数字形式显示ip
-v 表示显示详细信息
2,使用dmitry(扫描服务器的软件,基于全连接的扫描方式)
dmitry -pb ip
3,nmap -sT -p1-200 --script=banner ip
-sT,表示使用TCP方式扫描
-p 1-200表示扫描端口
--script 使用脚本是banner
4,使用amap -B ip 端口
-B表示获取banner信息
5,使用浏览器插件,比如wappalyzer,分析目标网站的平台架构、网站服务器配置环境、语言
6,使用tamper data或者Live http headers等工具拦截数据包查看,需要管住响应包中的两个参数,server、x-powered-by

2019-9-25:渗透测试,基础学习,Hydra BP爆破,js基本知识,banner信息收集笔记的更多相关文章

  1. JavaScript 基础学习(二)js 和 html 的结合方式

    第一种 使用一个标签 <script type="text/javascript"> js代码; </script> 第二种 使用 script 标签,引入 ...

  2. 零基础到精通Web渗透测试的学习路线

    小编相信很多新手都会遇到以下几个问题 1.零基础想学渗透怎么入手? 2.学习web渗透需要从哪里开始? 这让很多同学都处于迷茫状态而迟迟不下手,小编就在此贴给大家说一下web渗透的学习路线,希望对大家 ...

  3. 2019-9-25:渗透测试,基础学习,medusa爆破学习

    Medusa(美杜莎)暴力破解使用 该文章仅供学习,利用方法来自网络文章,仅供参考 一.简介 medusa(美杜莎)是一个速度快,支持大规模并行,模块化,爆破登陆,可以同时对多个主机,用户或是密码执行 ...

  4. WEB渗透测试基础工具

    代理查询网站:hidemyass(隐藏我的屁股) HTTrack:HTTrack是一个免费和易用的离线浏览工具(浏览器),它可以允许你下载整个WWW网站至本地目录,并且通过遍历网站目录获取HTML,图 ...

  5. kali黑客渗透测试基础环境准备

    1.apt-get install python-nmap 2.apt-get install python-setuptools 正在读取软件包列表... 完成 正在分析软件包的依赖关系树      ...

  6. kali渗透测试基础

    一侦查 研究如何收集有关目标的情报,比如开发那些端口用来通信,托管在哪里,提供给客户的服务类型等. 交付内容应该包括需要攻击的所有目标资产清单,与那些资产关联的应用,使用的服务以及可能的资产所有者. ...

  7. 安全测试-WEB安全渗透测试基础知识(四)

    .4. HTTP标准 1.4.1. 报文格式 1.4.1.1. 请求报文格式 <method><request-URL><version> <headers& ...

  8. Javascript 基础学习(五)js 的运算符

    通过运算符可以对一个或多个值进行运算,并且一定有运算结果返回 算数运算符 ​ 算数运算符包括相加(+).相减(-).相乘(*).相除(/).取模(%).任何值与字符串相加都会转换为字符串,做的是字符串 ...

  9. Javascript 基础学习(六)js 的对象

    定义 对象是JS中的引用数据类型.对象是一种复合数据类型,在对象中可以保存多个不同数据类型的属性.使用typeof检查一个对象时,会返回object. 分类 内置对象 由ES标准定义的对象,在任何ES ...

随机推荐

  1. Mybaits 源码解析 (六)----- 全网最详细:Select 语句的执行过程分析(上篇)(Mapper方法是如何调用到XML中的SQL的?)

    上一篇我们分析了Mapper接口代理类的生成,本篇接着分析是如何调用到XML中的SQL 我们回顾一下MapperMethod 的execute方法 public Object execute(SqlS ...

  2. 数据存储之非关系型数据库存储----MongoDB存储

    MongoDB存储----文档型数据库 利用pymongo连接MongoDB import pymongo client = pymongo.MongoClient(host='localhost', ...

  3. 2019-2020-1 20199314 《Linux内核原理与分析》 第八周作业

    可执行程序工作原理. 1.ELF(Executable and Linkable Format)可执行和可链接文件,其包含了以下三类: 可重定位文件(Relocatable File):保存着代码和适 ...

  4. mysql中的锁机制之悲观锁和乐观锁

    1.悲观锁? 悲观锁顾名思义就是很悲观,悲观锁认为数据随时就有可能会被外界进行修改,所以悲观锁一上来就会把数据给加上锁.悲观锁一般都是依靠关系型数据库提供的锁机制,然而事实上关系型数据库中的行锁,表锁 ...

  5. Bootstrap布局基础

     1.栅格系统(布局)Bootstrap内置了一套响应式.移动设备优先的流式栅格系统,随着屏幕设备或视口(viewport)尺寸的增加,系统会自动分为最多12列. 我在这里是把Bootstrap中的栅 ...

  6. K近邻(k-Nearest Neighbor,KNN)算法,一种基于实例的学习方法

    1. 基于实例的学习算法 0x1:数据挖掘的一些相关知识脉络 本文是一篇介绍K近邻数据挖掘算法的文章,而所谓数据挖掘,就是讨论如何在数据中寻找模式的一门学科. 其实人类的科学技术发展的历史,就一直伴随 ...

  7. Mybaits 源码解析 (十)----- 全网最详细,没有之一:Spring-Mybatis框架使用与源码解析

    在前面几篇文章中我们主要分析了Mybatis的单独使用,在实际在常规项目开发中,大部分都会使用mybatis与Spring结合起来使用,毕竟现在不用Spring开发的项目实在太少了.本篇文章便来介绍下 ...

  8. 算法编程题积累(3)——腾讯笔试"构造回文“问题

    首先理解题意,回文串的特点:倒序后跟原串相同.故而可以将原串看成向一个回文串在任意位置添加任意字符后形成的字符串,也就是说原串中存在一段未必连续的回文序列. 通过分析可以知道AC本题的核心思路:求出回 ...

  9. PHP关于access_token失效问题

    PHP关于access_token失效问题 有时候PHP设置了缓存 明明就是没有过期 但却提示失效这情况一般就是1 多个appid和secrete 生成的access_token互相覆盖了 所以 这种 ...

  10. js数组方法大全(下)

    # js数组方法大全(下) 记录一下整理的js数组方法,免得每次要找方法都找不到.图片有点多,注意流量,嘻嘻! 本期分享 forEach() map() filer() every() some() ...