如何识别恶意源代码?

发布于 2024-08-03 13:23:58 字数 1437 浏览 7 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

凯凯我们等你回来 2024-08-10 13:23:58

虽然这并不能真正回答您的问题,但我认为阅读一篇非常有趣的论文是 肯·汤普森对信任信任的反思。它提出了一个有趣的观点:即使您的源代码没有缺陷(病毒、木马等),如果您的编译器有缺陷,您仍然可能会生成有缺陷的可执行文件。即使您从干净的源代码重建编译器,您仍然可能遇到相同的问题。

除非您使用自己的微芯片从头开始构建计算机,手工组装自己的 BIOS,编写自己的操作系统、编译器和软件,否则您必须在某个地方划清界限并信任您构建系统所依据的硬件和软件是正确的。

While this does not really answer your question, I think a really interesting paper to read is Reflections on Trusting Trust by Ken Thompson. It raises a fascinating point that even if your source code is free of defects (viruses, trojans, etc.), you might still be producing defective executables if your compiler is defective. And even if you rebuild the compiler from clean source code, you can still have the same problem.

Unless you're building your computer from the ground up with your own microchips, hand-assembling your own BIOS, writing your own operating system, compiler, and software, you have to draw the line somewhere and trust that the hardware and software upon which you're building your systems are correct.

盗梦空间 2024-08-10 13:23:58

您可以检查传入数据包上的邪恶位... http://en.wikipedia.org/wiki/邪恶_位

You could check for the Evil Bit on incoming packets... http://en.wikipedia.org/wiki/Evil_bit

八巷 2024-08-10 13:23:58

如果你想识别恶意软件,你必须知道它是如何工作的。这意味着研究恶意软件并获得生成恶意软件的技能。

  • 搜索 29A - 他们写了有关病毒的论文,
  • 阅读了有关 rootkit 的文章(甚至还有相关书籍),
  • 阅读了有关逆向工程
  • 的内容,阅读了恶意软件的源代码 - 网络上有很多此类内容。
  • 学习汇编器
  • 了解您的操作系统
  • 反转操作系统内核
  • 获取 clam-av,检查源代码

我不会在此处提供链接。但它们很容易找到。

If you want to recognize malware, you must know how it works. This means researching malware and aquirering the skill to produce malware.

  • search for 29A - they wrote papers on virus
  • read about rootkits (there are even books on it)
  • read about reverse engineering
  • read source code of malware - there's plenty of it in the web.
  • learn assembler
  • learn about your OS
  • reverse the os-kernel
  • get clam-av, check the source

I won't provide links here. They are easily found though.

压抑⊿情绪 2024-08-10 13:23:58

如果你真的想学习,并且愿意投入时间,你的时间可能最好花在谷歌上寻找然后参与灰帽社区。这个话题非常复杂。

如果您的问题就像“从源代码识别病毒的简单方法是什么”一样简单,那么这可能并不容易,因为有无数种方法可以解决这个问题。

If you really want to learn, and are willing to put in the time, your time is probably better spent on google to find then participate in a greyhat community. this topic is highly complex.

if your question is as simple as "what's an easy way to recognize a virus from its source code", well, it probably won't be easy, because there's infinite ways to go about it.

旧瑾黎汐 2024-08-10 13:23:58

您会问“大多数恶意软件想要做什么?”。

这类信息的一个很好的来源是The Hacker Quarterly,它非常主流,您可以在以下位置找到它:您当地的书店,或者您可以在线订阅,我们会将其邮寄给您

它的成立是为了帮助黑客和网络攻击者共享信息。如今它仍然很受黑客欢迎,并且许多人认为它本质上是有争议的。

《黑客季刊》2009 年夏季期封面

本期内容包括:

  • 不是敌人
  • 在数字世界
  • 具有安全意识的叔叔
  • 为什么“禁飞名单”是欺诈
  • 电信线人
  • 在国会图书馆查找信息
  • 破解 DI-524 接口
  • 简单的无线和 Windows 操作方法
  • 如果您无法忍受热,破解计算机!
  • 安全:真相与虚构
  • 黑客入侵 Beamz
  • 黑客视角:Jason Scott
  • iTunes 存储的信用卡漏洞
  • Zipcar 的信息基础设施
  • 黑客入侵联合国的方式和原因
  • 听广播黑客的声音!
  • 黑客空间 - 欧洲
  • 滥用元数据
  • Verizon FIOS 无线不安全
  • 传输
  • 使用网络侦查解决
  • 起诉电话推销员以获取乐趣和利润的
  • 问题黑客事件
  • 以及信件和市场

还有 Wikipedia 上关于黑客的一系列精彩文章

...是的,对于程序员来说,了解黑客攻击和代码破解的工作原理非常重要,这样他们就可以尽最大努力在程序中规避它。

You ask "What is it that most malware will want to do?".

An excellent source for this sort of information is The Hacker Quarterly, which is so mainstream, you may find it at your local bookstore, or you can subscribe online to get it mailed to you.

It was started to help hackers and phreakers share information. It is still very popular with hackers today and is considered by many to be controversial in nature.

Cover of The Hacker Quarterly, Summer 2009 issue

Contents of the Current Issue include:

  • Not The Enemy
  • Regaining Privacy in a Digital World
  • The Security-Conscious Uncle
  • Why the "No-Fly List" is a Fraud
  • TELECOM INFORMER
  • Finding Information in the Library of Congress
  • Hacking the DI-524 Interface
  • Simple How-to on Wireless and Windows Cracking
  • If You Can't Stand the Heat, Hack the Computers!
  • Security: Truth Versus Fiction
  • Hacking the Beamz
  • HACKER PERSPECTIVE: Jason Scott
  • iTunes Stored Credit Card Vulnerability
  • Zipcar's Information Infrastructure
  • The How and Why of Hacking the U.N.
  • Listen to Radio Hackers!
  • HACKER SPACES - EUROPE
  • Abusing Metadata
  • Verizon FIOS Wireless Insecurities
  • TRANSMISSIONS
  • Using Network Recon to Solve a Problem
  • Suing Telemarketers for Fun and Profit
  • HACKER HAPPENINGS
  • Plus LETTERS and MARKETPLACE

There is also an excellent series of articles on Hacking at Wikipedia and on Computer Viruses.

... And yes, it is important for programmers to understand how hacking and code breaking works, so they can do the best they can to circumvent it in their programs.

风月客 2024-08-10 13:23:58

恶意代码和无意的安全错误之间没有区别。

您可能会问“我怎样才能编写一个没有错误且无法被利用的有用程序”。

正如我们在计算机科学中学到的那样,甚至不可能编写调试器来捕获无限循环,更不用说智能恶意了。

我对具有安全意识的应用程序的建议是进行广泛的代码审查和使用商用静态分析软件。

There is no difference between malicious code and an unintentional security bug.

You might as well be asking "How can I write a useful program that has no bugs and is impossible to exploit".

As we all learn in CS its impossible to even write debuggers to catch infinite loops let alone intelligent malevolence.

My advice for security conscious applications is an ex(p|t)ensive code review and use of commercially available static analysis software.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文