From 7d2fb76ede7ab82a4d2a61a00cc951105d7f4b0e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?F=E3=80=82?=
Date: Sun, 6 May 2018 03:21:26 +0800
Subject: [PATCH 1/2] Fix
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
主要进行本地化工作及界面调整,部分兼容Android Oreo(v8.1)。
---
cSploit/src/main/AndroidManifest.xml | 6 +-
.../org/csploit/android/MainActivity.java | 2 +-
.../csploit/android/WifiScannerFragment.java | 3 +-
.../java/org/csploit/android/core/System.java | 2 +-
.../android/gui/dialogs/AboutDialog.java | 2 +-
.../android/gui/dialogs/ChangelogDialog.java | 2 +-
.../gui/dialogs/CustomFilterDialog.java | 2 +-
.../android/gui/dialogs/ErrorDialog.java | 4 +-
.../android/gui/dialogs/FatalDialog.java | 3 +-
.../android/gui/dialogs/FinishDialog.java | 3 +-
.../android/gui/dialogs/InputDialog.java | 2 +-
.../gui/dialogs/RedirectionDialog.java | 2 +-
.../android/gui/dialogs/SpinnerDialog.java | 2 +-
.../org/csploit/android/plugins/Sessions.java | 2 +-
.../csploit/android/plugins/mitm/MITM.java | 2 +-
.../plugins/mitm/hijacker/Hijacker.java | 1 +
.../res/layout/plugin_mitm_dns_spoofing.xml | 6 +-
.../main/res/layout/plugin_mitm_hijacker.xml | 4 +-
.../layout/plugin_mitm_password_sniffer.xml | 6 +-
cSploit/src/main/res/layout/target_layout.xml | 5 +-
.../src/main/res/values-zh-rCN/strings.xml | 357 +++++++++---------
cSploit/src/main/res/values/strings.xml | 3 +-
cSploit/src/main/res/xml/preferences.xml | 4 +-
23 files changed, 221 insertions(+), 204 deletions(-)
mode change 100644 => 100755 cSploit/src/main/res/values-zh-rCN/strings.xml
mode change 100644 => 100755 cSploit/src/main/res/values/strings.xml
diff --git a/cSploit/src/main/AndroidManifest.xml b/cSploit/src/main/AndroidManifest.xml
index 3c6a33db5d..a2c243cabb 100644
--- a/cSploit/src/main/AndroidManifest.xml
+++ b/cSploit/src/main/AndroidManifest.xml
@@ -4,13 +4,17 @@
+
+
+
+
-
+
diff --git a/cSploit/src/main/java/org/csploit/android/MainActivity.java b/cSploit/src/main/java/org/csploit/android/MainActivity.java
index 89b9ca7a33..89af992f0c 100644
--- a/cSploit/src/main/java/org/csploit/android/MainActivity.java
+++ b/cSploit/src/main/java/org/csploit/android/MainActivity.java
@@ -72,7 +72,7 @@ public void verifyPerms() {
Manifest.permission.READ_PHONE_STATE)
!= PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this,
- new String[] {Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_PHONE_STATE},
+ new String[] {Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_PHONE_STATE, Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION},
MY_PERMISSIONS_WANTED);
}
}
diff --git a/cSploit/src/main/java/org/csploit/android/WifiScannerFragment.java b/cSploit/src/main/java/org/csploit/android/WifiScannerFragment.java
index 77aace94d5..a7f0cbd87f 100644
--- a/cSploit/src/main/java/org/csploit/android/WifiScannerFragment.java
+++ b/cSploit/src/main/java/org/csploit/android/WifiScannerFragment.java
@@ -186,7 +186,8 @@ public void onViewCreated(View v, Bundle savedInstanceState) {
getActivity().setTheme(R.style.AppTheme);
v.setBackgroundColor(ContextCompat.getColor(getActivity(), R.color.background_window));
}
- mWifiManager = (WifiManager) getActivity().getSystemService(Context.WIFI_SERVICE);
+ /**ADD getApplicationContext(). compatible Android N**/
+ mWifiManager = (WifiManager) getActivity().getApplicationContext().getSystemService(Context.WIFI_SERVICE);
mClipboard = (ClipboardManager) getActivity().getSystemService(Context.CLIPBOARD_SERVICE);
mWifiMatcher = new WirelessMatcher(getResources().openRawResource(R.raw.alice));
mScanReceiver = new ScanReceiver();
diff --git a/cSploit/src/main/java/org/csploit/android/core/System.java b/cSploit/src/main/java/org/csploit/android/core/System.java
index be85431054..f1c601989c 100644
--- a/cSploit/src/main/java/org/csploit/android/core/System.java
+++ b/cSploit/src/main/java/org/csploit/android/core/System.java
@@ -171,7 +171,7 @@ public static void init(Context context) throws Exception {
mWifiLock.acquire();
// wake lock if enabled
- if (getSettings().getBoolean("PREF_WAKE_LOCK", true)) {
+ if (getSettings().getBoolean("PREF_WAKE_LOCK", false)) {
PowerManager powerManager = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE);
if (mWakeLock == null)
diff --git a/cSploit/src/main/java/org/csploit/android/gui/dialogs/AboutDialog.java b/cSploit/src/main/java/org/csploit/android/gui/dialogs/AboutDialog.java
index 334825a4d9..d6baa564b0 100644
--- a/cSploit/src/main/java/org/csploit/android/gui/dialogs/AboutDialog.java
+++ b/cSploit/src/main/java/org/csploit/android/gui/dialogs/AboutDialog.java
@@ -42,7 +42,7 @@ public AboutDialog(Activity activity){
this.setTitle(activity.getString(R.string.about_csploit_v_) + System.getAppVersionName());
this.setView(view);
- this.setButton(BUTTON_POSITIVE, "Ok", new DialogInterface.OnClickListener() {
+ this.setButton(BUTTON_POSITIVE, activity.getString(R.string.ok), new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.dismiss();
}
diff --git a/cSploit/src/main/java/org/csploit/android/gui/dialogs/ChangelogDialog.java b/cSploit/src/main/java/org/csploit/android/gui/dialogs/ChangelogDialog.java
index d322f49010..ae3aa3e125 100644
--- a/cSploit/src/main/java/org/csploit/android/gui/dialogs/ChangelogDialog.java
+++ b/cSploit/src/main/java/org/csploit/android/gui/dialogs/ChangelogDialog.java
@@ -67,7 +67,7 @@ public ChangelogDialog(final Activity activity){
mLoader.dismiss();
this.setCancelable(false);
- this.setButton(BUTTON_POSITIVE, "Ok", new DialogInterface.OnClickListener(){
+ this.setButton(BUTTON_POSITIVE, activity.getString(R.string.ok), new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int id){
dialog.dismiss();
}
diff --git a/cSploit/src/main/java/org/csploit/android/gui/dialogs/CustomFilterDialog.java b/cSploit/src/main/java/org/csploit/android/gui/dialogs/CustomFilterDialog.java
index ca5d00eee6..96a417c0d5 100644
--- a/cSploit/src/main/java/org/csploit/android/gui/dialogs/CustomFilterDialog.java
+++ b/cSploit/src/main/java/org/csploit/android/gui/dialogs/CustomFilterDialog.java
@@ -42,7 +42,7 @@ public CustomFilterDialog(String title, Activity activity, final CustomFilterDia
this.setTitle(title);
this.setView(view);
- this.setButton(BUTTON_POSITIVE, "Ok", new DialogInterface.OnClickListener(){
+ this.setButton(BUTTON_POSITIVE, activity.getString(R.string.ok), new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int id){
assert view != null;
String f0 = ((EditText) view.findViewById(R.id.fromText0)).getText() + "".trim(),
diff --git a/cSploit/src/main/java/org/csploit/android/gui/dialogs/ErrorDialog.java b/cSploit/src/main/java/org/csploit/android/gui/dialogs/ErrorDialog.java
index 1c84e3f0f5..b28d773915 100644
--- a/cSploit/src/main/java/org/csploit/android/gui/dialogs/ErrorDialog.java
+++ b/cSploit/src/main/java/org/csploit/android/gui/dialogs/ErrorDialog.java
@@ -22,6 +22,8 @@
import android.app.AlertDialog;
import android.content.DialogInterface;
+import org.csploit.android.R;
+
public class ErrorDialog extends AlertDialog{
public ErrorDialog(String title, String message, final Activity activity){
super(activity);
@@ -29,7 +31,7 @@ public ErrorDialog(String title, String message, final Activity activity){
this.setTitle(title);
this.setMessage(message);
this.setCancelable(false);
- this.setButton(BUTTON_POSITIVE, "Ok", new DialogInterface.OnClickListener(){
+ this.setButton(BUTTON_POSITIVE, activity.getString(R.string.ok), new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int id){
dialog.dismiss();
}
diff --git a/cSploit/src/main/java/org/csploit/android/gui/dialogs/FatalDialog.java b/cSploit/src/main/java/org/csploit/android/gui/dialogs/FatalDialog.java
index e2dd45d206..0bb4b48664 100644
--- a/cSploit/src/main/java/org/csploit/android/gui/dialogs/FatalDialog.java
+++ b/cSploit/src/main/java/org/csploit/android/gui/dialogs/FatalDialog.java
@@ -24,6 +24,7 @@
import android.text.Html;
import android.text.method.LinkMovementMethod;
import android.widget.TextView;
+import org.csploit.android.R;
public class FatalDialog extends AlertDialog{
public FatalDialog(String title, String message, boolean html, final Activity activity){
@@ -45,7 +46,7 @@ public FatalDialog(String title, String message, boolean html, final Activity ac
}
this.setCancelable(false);
- this.setButton(BUTTON_POSITIVE, "Ok", new DialogInterface.OnClickListener(){
+ this.setButton(BUTTON_POSITIVE, activity.getString(R.string.ok), new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int id){
activity.finish();
}
diff --git a/cSploit/src/main/java/org/csploit/android/gui/dialogs/FinishDialog.java b/cSploit/src/main/java/org/csploit/android/gui/dialogs/FinishDialog.java
index 6fad70c785..23c98252b1 100644
--- a/cSploit/src/main/java/org/csploit/android/gui/dialogs/FinishDialog.java
+++ b/cSploit/src/main/java/org/csploit/android/gui/dialogs/FinishDialog.java
@@ -21,6 +21,7 @@
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
+import org.csploit.android.R;
public class FinishDialog extends AlertDialog{
public FinishDialog(String title, String message, final Activity activity){
@@ -29,7 +30,7 @@ public FinishDialog(String title, String message, final Activity activity){
this.setTitle(title);
this.setMessage(message);
this.setCancelable(false);
- this.setButton(BUTTON_POSITIVE, "Ok", new DialogInterface.OnClickListener(){
+ this.setButton(BUTTON_POSITIVE, activity.getString(R.string.ok), new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int id){
dialog.dismiss();
activity.finish();
diff --git a/cSploit/src/main/java/org/csploit/android/gui/dialogs/InputDialog.java b/cSploit/src/main/java/org/csploit/android/gui/dialogs/InputDialog.java
index dcf4b39615..a9e74b65a5 100644
--- a/cSploit/src/main/java/org/csploit/android/gui/dialogs/InputDialog.java
+++ b/cSploit/src/main/java/org/csploit/android/gui/dialogs/InputDialog.java
@@ -57,7 +57,7 @@ public InputDialog(String title, String message, String text, boolean editable,
this.setView(mEditText, 40, 0, 40, 0);
final InputDialogListener listener = inputDialogListener;
- this.setButton(BUTTON_POSITIVE, "Ok", new DialogInterface.OnClickListener() {
+ this.setButton(BUTTON_POSITIVE, activity.getString(R.string.ok), new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
if(listener != null)
listener.onInputEntered(mEditText.getText() + "");
diff --git a/cSploit/src/main/java/org/csploit/android/gui/dialogs/RedirectionDialog.java b/cSploit/src/main/java/org/csploit/android/gui/dialogs/RedirectionDialog.java
index 593932cc4d..ab0ce6021e 100644
--- a/cSploit/src/main/java/org/csploit/android/gui/dialogs/RedirectionDialog.java
+++ b/cSploit/src/main/java/org/csploit/android/gui/dialogs/RedirectionDialog.java
@@ -36,7 +36,7 @@ public RedirectionDialog(String title, Activity activity, final RedirectionDialo
this.setTitle(title);
this.setView(view);
- this.setButton(BUTTON_POSITIVE, "Ok", new DialogInterface.OnClickListener(){
+ this.setButton(BUTTON_POSITIVE, activity.getString(R.string.ok), new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int id){
assert view != null;
String address = ((EditText) view.findViewById(R.id.redirAddress)).getText() + "".trim(),
diff --git a/cSploit/src/main/java/org/csploit/android/gui/dialogs/SpinnerDialog.java b/cSploit/src/main/java/org/csploit/android/gui/dialogs/SpinnerDialog.java
index 57fca5c69c..c4b221688b 100644
--- a/cSploit/src/main/java/org/csploit/android/gui/dialogs/SpinnerDialog.java
+++ b/cSploit/src/main/java/org/csploit/android/gui/dialogs/SpinnerDialog.java
@@ -53,7 +53,7 @@ public void onNothingSelected(AdapterView> arg0){
this.setMessage(message);
this.setView(mSpinner);
- this.setButton(BUTTON_POSITIVE, "Ok", new DialogInterface.OnClickListener(){
+ this.setButton(BUTTON_POSITIVE, activity.getString(R.string.ok), new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int id){
listener.onItemSelected(mSelected);
}
diff --git a/cSploit/src/main/java/org/csploit/android/plugins/Sessions.java b/cSploit/src/main/java/org/csploit/android/plugins/Sessions.java
index 584fab63ee..d65dd1bbcc 100644
--- a/cSploit/src/main/java/org/csploit/android/plugins/Sessions.java
+++ b/cSploit/src/main/java/org/csploit/android/plugins/Sessions.java
@@ -146,7 +146,7 @@ public void onCreate(Bundle savedInstanceState) {
UIThread = this;
if(System.getMsfRpc()==null) {
- new FinishDialog(getString(R.string.error),"MSF RPC not connected",Sessions.this).show();
+ new FinishDialog(getString(R.string.error),getString(R.string.msfrpc_notconnect_error),Sessions.this).show();
return;
}
diff --git a/cSploit/src/main/java/org/csploit/android/plugins/mitm/MITM.java b/cSploit/src/main/java/org/csploit/android/plugins/mitm/MITM.java
index 5381b35959..1f17e60282 100644
--- a/cSploit/src/main/java/org/csploit/android/plugins/mitm/MITM.java
+++ b/cSploit/src/main/java/org/csploit/android/plugins/mitm/MITM.java
@@ -482,7 +482,7 @@ public void onClick(View v){
(
getString(R.string.mitm_dns_spoofing),
getString(R.string.mitm_dns_spoofing_desc),
- R.drawable.action_redirect,
+ R.drawable.action_redirectdns,
new OnClickListener() {
@Override
public void onClick(View v) {
diff --git a/cSploit/src/main/java/org/csploit/android/plugins/mitm/hijacker/Hijacker.java b/cSploit/src/main/java/org/csploit/android/plugins/mitm/hijacker/Hijacker.java
index 1277b8f816..d3038f3540 100644
--- a/cSploit/src/main/java/org/csploit/android/plugins/mitm/hijacker/Hijacker.java
+++ b/cSploit/src/main/java/org/csploit/android/plugins/mitm/hijacker/Hijacker.java
@@ -520,6 +520,7 @@ private void setStartedState() {
mSpoof.start(new OnSessionReadyListener() {
@Override
public void onSessionReady() {
+ mHijackToggleButton.setText(R.string.start);
Hijacker.this.runOnUiThread(new Runnable() {
@Override
public void run() {
diff --git a/cSploit/src/main/res/layout/plugin_mitm_dns_spoofing.xml b/cSploit/src/main/res/layout/plugin_mitm_dns_spoofing.xml
index acfe966f64..bab184e377 100644
--- a/cSploit/src/main/res/layout/plugin_mitm_dns_spoofing.xml
+++ b/cSploit/src/main/res/layout/plugin_mitm_dns_spoofing.xml
@@ -16,8 +16,8 @@
android:text="@string/toggle_button"
android:textAllCaps="true"
android:textColor="@android:color/white"
- android:textOff="Start"
- android:textOn="Stop" />
+ android:textOff="@string/start"
+ android:textOn="@string/stop" />
+ android:text="@string/save" />
+ android:textOff="@string/start"
+ android:textOn="@string/stop" />
+ android:textOff="@string/start"
+ android:textOn="@string/stop" />
设置
cSploit
- 额!崩溃了...不过我将给我的开发者发送报告来帮助解决这个问题。
+ cSploit崩溃了,请发送报告给开发者来帮助解决这个问题!
切换按钮
- 在下方键入跳转详情:
+ 输入跳转地址:
地址
端口
目标
@@ -11,7 +11,7 @@
服务
操作系统
设备类型
- 点一个会话来开始劫持,长摁保存到文件。
+ 点击会话开始劫持或者长按保存为文件
排序:
选择一个要运行的模块
选择
@@ -23,7 +23,7 @@
非版权保护 来自 Simone Margaritelli 又名 evilsocket。
免责声明
-
+
授权
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by the Free Software
@@ -44,63 +44,63 @@ If not, see http://www.gnu.org/licenses/.
最小长度
用户名
字符集
- 输入一个替换过滤器, 既可以是一个简单替换也可以是一个正则表达式。
- 来自
- 去往
+ 输入一个替换过滤器, 既可以是一个简单替换也可以是一个正则表达式
+ 自定义
+ 目标
局域网唤醒
发送
可以更新
您已经可以更新到
版本,您想下载么?
正在检查…
- 没有可用的更新
+ 没有可用的更新,请稍后检查!
新版本
被找到!
正在下载更新…
正在连接…
取消
错误
- 在下载更新时发送错误。
- 不正确的目标。
+ 下载更新时发生错误!
+ 不正确的目标!
添加自定义目标
在下方键入URL,主机名或IP地址:
- 网络发现停止。
- 网络发现开始。
+ 网络发现停止
+ 网络发现开始
启动网络监视器
停止网络监视器
启动 Metasploit RPCD
停止 Metasploit RPCD
退出
- 将关闭 cSploit,您确定继续么?
- 再摁一次返回退出。
+ 即将关闭 cSploit,您确定继续么?
+ 再按一次返回键退出
已选择
- 没在在SD卡上找到会话文件。
+ SD卡上未找到会话文件!
请从SD卡中选择会话文件:
选择会话
- 无效的会话名称。
+ 无效的会话名称
会话已经保存到
保存到会话
- 请输入会话文件的名称 :
+ 请输入会话文件的名称:
新会话已开始
警告
开始一个新的会话将覆盖当前的会话,继续?
-很抱歉,您的固件有 LD_LIBRARY_PATH 缺陷,它和 cSploit 不兼容。
]]>
+很抱歉,您的固件存在 LD_LIBRARY_PATH 缺陷,它和 cSploit 不兼容!]]>
更多信息请前往 常见问题(英语)。]]>
在安装文件时遇到问题!
-很抱歉,您设备的处理器不是ARM的,它和 cSploit 不兼容。]]>
+很抱歉,您设备的处理器不是ARM的,它和 cSploit 不兼容!]]>
更多信息请前往 系统要求 section.]]>
- cSploit 要求安装完全版的BusyBox,然而并没有找到killall二进制文件(可能是你的BusyBox版本过旧)。
- 本程序只能运行在已经root的设备上。
+ cSploit 要求安装完全版的BusyBox,然而并没有找到killall二进制文件(可能是BusyBox版本过旧)!
+ 本程序只能运行在已经root的设备上!
正在初始化…
初始化失败
目标别名
为目标设置一个别名:
- 无网络连接。
- WiFi 密码已经复制到剪贴板。
+ 无网络连接!
+ WiFi 密码已经复制到剪贴板
]]>
使用密钥 ]]>
!]]>
@@ -110,99 +110,90 @@ If not, see http://www.gnu.org/licenses/.
输入 WiFi 密钥或尝试破解:
输入 WiFi 密钥:
正在扫描…
- 无效的文件名称。
-发生了未知的错误,请尝试选择一个新的目标。
-
+ 无效的文件名称!
+发生了未知的错误,请尝试选择一个新的目标!
DNS欺骗
- 重定向连接到指定的web/IP
+ 重定向连接到指定的web链接或IP地址
储存
已经选择
未找到]]>
- 没有在当前目标找到任何开放的端口,请先运行服务检查工具。
- 未找到可用的攻击方案。
- 没有已经发现的开放端口,请先在使用专注扫描前先使用端口扫描。
- 没有已经发现的攻击方案,请先运行攻击方案查找工具。
- 没有已经启动的攻击。
- 没有已经发现的漏洞。请先运行漏洞发现工具。
- 没有关于运行在目标上的服务的具体信息,请先运行服务检查工具。
+ 没有在当前目标找到任何开放的端口,请先运行服务检查工具!
+ 未找到可用的攻击方案
+ 没有已经发现的开放端口,请先在使用专注扫描前先使用端口扫描!
+ 没有已经发现的攻击方案,请先运行攻击方案查找工具!
+ 没有已经启动的攻击
+ 没有已发现的漏洞,请先运行漏洞发现工具!
+ 没有关于运行在目标上的服务的具体信息,请先运行服务检查工具!
自定义字符集
请输入您想使用的自定义字符:
- 指定的端口无效。
- 请求体不能为空。
- 请求已经发送。
- 自定义局域网唤醒端口并摁下发送。
-无法在不知道物理地址(MAC)的情况下发送局域网唤醒包。
-
- 没有可以处理此类URL的行为。
+ 指定的端口无效
+ 请求体不能为空
+ 请求已经发送
+ 自定义局域网唤醒端口并按下发送
+无法在不知道物理地址(MAC)的情况下发送局域网唤醒包
+ 没有可以处理此类URL的行为
选择端口
请使用逗号分隔端口号:
无效的端口 \'
- 端口号只能在0到65535之间。
- 指定的端口无效。
- 没有指定端口。
+ 端口号只能在0到65535之间
+ 指定的端口无效
+ 没有指定端口
关于 cSploit v
-通过在下方短摁以选择目标,或者长摁以输入别名。
-
+ 通过在下方短按选择目标或者长按更改主机别名
正在生成密钥…
-没有可用的 WiFi 连接,程序将仅仅检查更新。 #STATUS#
-
+没有可用的 WiFi 连接,程序将只检查更新 #STATUS#
正在加载更新日志…
-在加载更新日志时遇到问题:
{DESCRIPTION}