对合法程序进行反病毒检测

2024-03-07

基本上,我的程序与另一个 jar 文件一起运行。下面是下载功能的代码:

public void saveUrl(final String filename, final String urlString) throws MalformedURLException, IOException {
    BufferedInputStream in = null;
    FileOutputStream fout = null;
    try {
        in = new BufferedInputStream(new URL(urlString).openStream());
        fout = new FileOutputStream(filename);

        final byte data[] = new byte[1024];
        int count;
        while ((count = in.read(data, 0, 1024)) != -1) {
            fout.write(data, 0, count);
        }

    } catch (Exception e) {
        return;
    } finally {
        if (in != null) {
            in.close();
        }
        if (fout != null) {
            fout.close();
        }
    }
}

并开始新的流程

public void runUpdate() throws IOException{
    String folder = fileLocation;
    ProcessBuilder p = new ProcessBuilder();
    p.command(folder);
    p.start();
}

然而,即使有用户提示并必须批准下载,当我在 Eclipse 环境之外对其进行测试时,我的防病毒软件也立即将其识别出来。

它被检测为“trojan.downloader”。我想这和下载功能有关系吗?我并不是真的想打败一个反病毒程序。我并没有试图做任何非法的事情。

也许一些混淆可以解决问题?


编译器生成的字节码与 AV 正在寻找的某些特定代码模式/签名相匹配,这意味着他们过去发现/逆转的某些恶意软件具有与此类似的代码,他们可以可靠地找到它们。

最好的选择是识别并重写触发检测的方法,直到它不再匹配 AV 正在寻找的任何内容,混淆不是一个好主意(但可以完成,如果混淆器确实控制流混淆)来修复这个问题是因为不能保证它会产生与原始字节码足够不同的字节码(一些混淆器,如 ProGuard,甚至不进行控制流混淆)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

对合法程序进行反病毒检测 的相关文章

随机推荐

  • 为什么 Java 从套接字读取随机数量而不是整个消息?

    我正在做一个项目 有一个关于 Java 套接字的问题 可以找到源文件here https github com ChrisLundquist Handbrake Network Queue blob master java src File
  • C++ - 如何计算字符频率?

    我需要编写代码来将唯一字符及其频率存储在动态数组中 随着新数据的到来 我需要增加它的大小 在这种情况下 新数据将是遇到的新字符 我想到的算法是每次读取给定字符串时检查已知字符列表 如果它是一个新字符 我需要将数组大小增加 1 如果它不是一个
  • clojure 是否具有与 C# 等价的 Yield?

    我正在读电子书Scala 和 Clojure 中的函数式编程模式 https pragprog com book mbfpp functional programming patterns in scala and clojure并找到了导
  • LAContext canEvaluatePolicy 和 Swift 2

    这是我的 Swift 代码 if LAContext canEvaluatePolicy LAPolicy DeviceOwnerAuthenticationWithBiometrics return true 使用 Swift2 我将代码
  • Spring Batch 访问步骤内的作业参数

    我有以下 Spring Batch Job 配置 Configuration EnableBatchProcessing public class JobConfig Autowired private JobBuilderFactory
  • Rails ActiveRecord - 有没有办法在没有 id 的情况下对表执行操作?

    我有一张一行两列的表格 int version datetime updated 是否有 Rails ActiveRecord 方法来获取和设置这些列中的数据 没有 id 列 我使用此表来跟踪其他表的查询版本 每次查询另一个表后 版本列都会
  • 我可以在 distcheck 期间使用 $dc_install_base 安装 systemd 文件吗?

    我有以下用于安装 systemd 服务文件的 Autotools 代码 该文件必须安装在外部 prefix到 pkg config 变量指定的目录 我知道这是不正确的 但我无法改变 systemd 的工作方式 配置文件 AC ARG WIT
  • OpenMPI 1.4.3 mpirun 主机文件错误

    我正在尝试在 4 个节点上运行一个简单的 MPI 程序 我正在使用在 Centos 5 5 上运行的 OpenMPI 1 4 3 当我使用主机文件 机器文件提交 MPIRUN 命令时 我没有得到任何输出 而是出现空白屏幕 因此 我必须终止这
  • Python 谷歌地图 驾驶时间

    我需要使用 Python 获取两组坐标之间的行驶时间 我能找到的唯一 Google Maps API 包装器要么使用 Google Maps API V2 已弃用 要么不具有提供驾驶时间的功能 我在本地应用程序中使用它 并且不希望受限于使用
  • 找出有盖矩形物体的方向、长度和半径

    I have a image as shown as fig 1 I am trying to fit this binary image with a capped rectangular fig 2 to figure out 方向 长
  • 更改 Xamarin 中格式化文本的字体

    我有一个带有格式化文本的标签 我想更改其字体样式 我的意思是字体 我尝试使用自定义标签渲染 就像对普通文本一样 但它没有得到反映 我的疑问是我们是否可以更改格式化文本的字体 因为它对于标签的文本 非格式化文本 工作正常 这是我的 xaml
  • 检查“组件”的渲染方法

    我正在尝试按照指南设置一个react router dom高阶组件 我有个问题说 元素类型无效 需要一个字符串 对于内置组件 或一个类 函数 对于复合组件 但得到 对象 您可能忘记从定义它的文件中导出组件 或者您可能混淆了默认导入和命名导入
  • jQuery:从文件系统读取文本文件

    我正在尝试使用 jquery 读取文本文件 如下所示 LOAD file and split line by line and append divs get myFile txt function data var lines data
  • 获取最近 7 天的日期

    我想获取从现在起过去 7 天的日期 例如当前日期是 02 10 2016 像这样获取 7 天的日期 01 10 2016 30 09 2016 29 09 2016 28 09 2016 27 09 2016 26 09 2016 My c
  • Java Servlet URL 映射

    我对java servlet相当陌生 如果这个问题看起来很愚蠢 请原谅我 我在 web xml servlet 选项卡中使用 netbeans 添加了 servlet 映射 例如 servlet 类和 url 模式 但是当应用程序运行时 它
  • 在 Firebase 函数中过滤数据

    如何找到 myPhone 的 users key 值 其值 123 我尝试过的 let usersRef admin database ref users usersRef orderByChild myPhone equalTo 123
  • 如何实现历史版本控制?

    我们正处于在 SQL 2008 R2 上构建大型 C MVC2 应用程序 我们还采用 Sharp 架构和 Nhibernate 作为生态系统的一部分 的早期阶段 其中一个要求是在给定的时间内可以访问所有数据库行版本 历史 我们尝试过类似以下
  • Meyers Singleton 与 C++-98 线程安全

    目前我有迈耶单例的实现 class ClassA public static ClassA GetInstance static ClassA instance return instance private ClassA ClassA a
  • 将 Robolectric 与 SQLiteAssetHelper 结合使用

    我对 Robolectric 很陌生 所以如果我在这里遗漏了一些明显的东西 请提前道歉 我有一个从以下位置加载数据库的应用程序assets目录使用SQLite资产助手 https github com jgilfelt android sq
  • 对合法程序进行反病毒检测

    基本上 我的程序与另一个 jar 文件一起运行 下面是下载功能的代码 public void saveUrl final String filename final String urlString throws MalformedURLE