Brida:运用Frida进行移动使用浸透测验

访客5年前黑客工具818

Brida是一款 Burp Suite 扩展,作为一座桥梁衔接着Burp Suite以及Frida,以协助用户修正运用程序与后端服务器之间的通讯数据为己任。在剖析移动端运用时遇到运用运用随机密钥式对称加密,假如不知道其运用的密钥就无法篡改其通讯数据,经过Burp也就无法对一切的交流数据进行更改了,所以Brida就这样出现在咱们视界中。
Frida
Frida是一款十分强壮的结构,其可向Windows、MacOS、Linux、iOS、Android,QNX的运用中注入Javascript,从而阻拦运用传输的数据。本文仅运用到其间少部分功用,更多能够参阅Frida文档,强烈建议读者更好是在了解了其基本概念以及常用功用后再进行阅览。引荐两篇不错的译文:运用Frida合作Burp Suite追寻API调用; 如安在iOS运用程序顶用Frida来绕过“越狱检测”?
必备
东西规划初衷是为了进步浸透测验人员作业效率,因而读者或许需求先了解该运用以及体系内部构件,浸透测验,反编译,逆向工程等有必定了解。有运用过Burp Suite的经历将会给你带来协助,本次测验将用到以下软件:
Burp Suite Pro 1.7.25
Frida 10.11
Pyro 4.60 (pip install pyro4)
Python 2.7
Java 1.8
反编译软件
咱们决议运用Pyro4作为Burp与Frida之间的接口,以便直接拜访Java和Python扩展。Brida项目地址:https://github.com/federicodotta/Brida,之后将在BAppStore上架
常见场景
假如你需求对运用(Android,iOS等)进行一个完好评价,也便是说你需求对运用与后端服务器之间的交互进行研究。身为浸透测验人员简直每天都有做这样的作业,因而假定你了解怎么重定向设备/运用的通讯,与此同时假定你能设法绕过SSL Pinning验证机制以及/或许anti-root检测。

为了与服务器之间进行发送/接纳数据,该运用程序好像有是运用某种(自定义)编码或许是加密例程。一般来说,运用程序的数据传输或许是根据加密令牌,也或许是运用杂乱的Challenge-Response协议进行身份验证。那么咱们怎么篡改这些信息呢?大多数的时刻仅有可行的办法便是对运用进行反编译作业,然后辨认咱们感兴趣部分的运用的函数或许办法,之后再从头完成这些功用。明显该办法耗时较长而且不是每次都那么凑效:即令牌生成以及加密例程都是与设备(状况)有强相关的,或许是存储在不能直接拜访的维护区域。这时Brida的用途就表现出来:它会测验提取密钥或许证书并重写加密例程,这些脏活累活就交给它吧!
作业原理
Brida由以下三个组件构成:
Brida.jar:Burp Suite扩展
bridaServicePyro:用于衔接Frida和Burp的一个Python脚本,其存储在扩展之中,在履行Brida进程中会复制到一个暂时目录中
script.js:需求注入到方针运用的JavaScript脚本,它会经过Frida自带的rpc.exports将获取的函数信息回来给扩展
'use strict';
// 1 - FRIDA EXPORTS
rpc.exports = {
    exportedFunction: function() {
        // Do stuff...
        // This functions can be called from custom plugins or from Brida "Execute method" dedicated tab
    },
    // Function executed when executed Brida contextual menu option 1.
    // Input is passed from Brida encoded in ASCII HEX and must be returned in ASCII HEX (because Brida will decode the output
    // from ASCII HEX). Use auxiliary functions for the conversions.
    contextcustom1: function(message) {
        return "6566";
    },
    // Function executed when executed Brida contextual menu option 2.
    // Input is passed from Brida encoded in ASCII HEX and must be returned in ASCII HEX (because Brida will decode the output
    // from ASCII HEX). Use auxiliary functions for the conversions.
    contextcustom2: function(message) {
        return "6768";
    },
    // Function executed when executed Brida contextual menu option 3.
    // Input is passed from Brida encoded in ASCII HEX and must be returned in ASCII HEX (because Brida will decode the output
    // from ASCII HEX). Use auxiliary functions for the conversions.
    contextcustom3: function(message) {
        return "6768";
    },
    // Function executed when executed Brida contextual menu option 4.
    // Input is passed from Brida encoded in ASCII HEX and must be returned in ASCII HEX (because Brida will decode the output
    // from ASCII HEX). Use auxiliary functions for the conversions.
    contextcustom4: function(message) {
        return "6768";
    }
}
// 2 - AUXILIARY FUNCTIONS
// Convert a hex string to a byte array
function hexToBytes(hex) {
    for (var bytes = [], c = 0; c 2)
    bytes.push(parseInt(hex.substr(c, 2), 16));
    return bytes;

[1] [2] [3] [4]  黑客接单网

相关文章

下一代网络钓鱼技术——滥用Azure信息保护功能-黑客接单平台

在这篇文章中,咱们将从攻击者的视点介绍怎么运用Azure信息维护(Azure Information Protection,AIP)来改善网络垂钓技能。这个主意是在一次测验作业进程中发生的,其时我正在...

谈谈Json格式下的CSRF攻击-黑客接单平台

一、CSRF缝隙简介 csrf缝隙的成因便是网站的cookie在浏览器中不会过期,只需不封闭浏览器或许退出登录,那今后只需是拜访这个网站,都会默许你现已登录的状况。而在这个期间,进犯者发送了结构好的c...

探究Flask/Jinja2中的服务端模版注入(二)

在探究Flask/Jinja2中的服务端模版注入Part1中,我开端的方针是找到文件的途径或许说是进行文件体系拜访。之前还无法达到这些方针,可是感谢朋友们在之前文章中的反应,现在我现已可以完成这些方针...

使用“进程注入”完成无文件复生 WebShell

上周末,一个好兄弟找我说一个很重要的方针shell丢了,这个shell之前是经过一个S2代码履行的缝隙拿到的,现在缝隙还在,不过web目录悉数不可写,问我有没有办法搞个webshell持续做内网。正好...

2019 神盾杯 final Writeup(二)-黑客接单平台

前语 接之前的剖析文章,本篇文章将2019 神盾杯线下赛后续两道web题也解析一下。 web3 预置后门扫描 翻开源码发现是干流cms typecho,先上东西扫一波: 一起注意到版别号: 依...

ARM架构上用来替代JTAG的调试协议SWD-黑客接单平台

关于嵌入式开发人员和专门进犯硬件的黑客来说,JTAG 实践上是调试和拜访微处理器寄存器的标准。该协议已运用多年,至今仍在运用,JTAG调试接口有必要运用VCC、GND电源信号,以及TMS、TCK、TD...