Tag: 混淆

如何编译一个Linux shell脚本成为一个独立的可执行文件*二进制*(即不只是如chmod 755)?

我正在寻找一个免费的开源工具集,它将编译各种“经典”脚本语言,例如Korn Shell,ksh,csh,bash等作为可执行文件 – 如果脚本调用其他程序或可执行文件,被包含在单个可执行文件中。 原因: 为了混淆交付给客户的代码,以便不泄露我们的知识产权 – 将其交付给客户自己的机器/系统,我无法控制访问权限,因此程序文件必须是二进制的通过在文本编辑器或hexdump查看器中查看工作是不容易看到的。 为客户制作一个简单的部署程序,而不需要/或者最less量的任何外部依赖。 我喜欢简单的东西,而不需要包pipe理器,因为: 我不能依靠客户的知识去执行(不)包装说明和 我不能依赖关于安装软件包(实际上来自第三方)的机器策略。 最简单的首选方法是能够编译到适当的机器代码一个单一的可执行文件,将无需任何依赖的情况下运行。

如何spamproof邮件链接?

我希望访问者能够直接在我的网页上点击(或复制)一个电子邮件地址。 但是,如果我可以让僵尸程序和其他爬虫难以获得所述电子邮件地址并将其注册到垃圾邮件列表中,那么这将非常棒。 我发现不同的方法(即编码mailto HTML链接),无论是JavaScript或纯HTML,但你们build议? JavaScript技术似乎更复杂,但是这可能会影响closures它的用户,以及像Google这样的合法抓取工具。 另一方面,HTML的似乎有点基本,机器人作家应该已经明白了现在… 我是否应该这样做,或者垃圾邮件发送者是否会收到我的电子邮件? 我知道反垃圾邮件filter越来越好,但是如果我能做更多的事来减缓垃圾邮件发送者的话,我会的。

你如何隐藏代码中的密钥?

一段时间以来,我一直在想,一些软件如何隐藏秘密密钥,使得它们不能被轻易发现。 只是几个例子: DVD播放器软件隐藏CSS密钥 带有序列号/注册码的软件隐藏用于validation序列号的密钥/散列 很明显,这些程序不仅仅是在一个字节[]中做了一些事情,因为这样可以很容易地窃取他们的密钥并生成自己的序列号等等。 用什么样的策略来隐藏这些密钥,使它们不易被发现?

Android Proguard Javascript界面​​失败

我在我的项目中使用了这里描述的一段代码 http://lexandera.com/2009/01/extracting-html-from-a-webview/ 我创build.apk文件,将其安装在我的设备上并正确工作。 如果我尝试使用proguard进行混淆,则项目失败,但未达到MyJavaScriptInterface的showHTML(String html)方法。 我的proguardconfiguration -keep public class com.mypackage.MyClass.MyJavaScriptInterface -keep public class * implements com.mypackage.MyClass.MyJavaScriptInterface -keepclassmembers class * implements com.mypackage.MyClass.MyJavaScriptInterface { <methods>; } 根据这个答案Android proguard Javascript接口的问题 。 解决了。 正如埃里克build议,我改变了Proguardconfiguration文件,像这样: -keep public class com.mypackage.MyClass$MyJavaScriptInterface -keep public class * implements com.mypackage.MyClass$MyJavaScriptInterface -keepclassmembers class com.mypackage.MyClass$MyJavaScriptInterface { <methods>; } 现在我的项目完美地工作。 对于API 17+,您还需要保留@JavascriptInterface注释: -keepattributes JavascriptInterface http://developer.android.com/reference/android/webkit/JavascriptInterface.html

我怎么能说没有字符或数字在JavaScript中的“爱”?

受到Ryan Barnett 2011年BlackHat DC PPT的启发,特别是以下代码: ($=[$=[]][(__=!$+$)[_=-~-~-~$]+({}+$)[_/_]+ ($$=($_=!''+$)[_/_]+$_[+$])])()[__[_/_]+__ [_+~$]+$_[_]+$$](_/_) 昨天是恋人特别的日子,所以我试着写类似的东西。 这基本上提醒“我爱你”没有任何字符或数字。 例如“I”可以从((_=-~[])/–_+[])[_] 我们有“[object object]”,“true”,“false”,“NaN”,“Infinity”的用法,我想不出用这种方法得到“v”的方法。 我试图想到String.fromCharCode() ,(Ryan已经得到了我们的window引用,所以理论上我们可以window["String"]["fromCharCode"](118) ),但是我错过了“S”和“C “这里的性格。 还想想window["eval"](…) ,再次,我没有“v”。 只是试着解释一下, []是空的,当对其应用+/-/~操作时,它转换为数字0 ,并且~[]给出1 / 1/0给出Infinitey 。 然后它来到1/0 + [] ,他们都将转换为string的加法,它给出"Infinity"和"Infinity"[_] == "Infinity"[0] == "I" … Ryan的原始代码更复杂,利用更多,包括范围,特殊的返回值等(这是另外一个故事) 这似乎不是一个好主意,但是很有趣。 与meze的帮助,我能够产生这个火狐: ($=($=[$=[]][(__=!$+$)[_=-~-~-~$]+(_$={}+$)[_/_]+ ($$=($_=!''+$)[_/_]+$_[+$])])())[__[_/_]+__ [_+~$]+$_[_]+$$]((_$_=(__$=-~[])/–__$+[])[__$]+_$[_+++_]+__[__$=-~-~[]]+_$[-~[]]+($[_$[$__=_+_]+_$[++$__]+_$[++$__]+_$[++$__]+_$[++$__]+_$[++$__]]+[])[ $__+$__+–_]+__[++_]+_$[$__=_+–_]+_$_[_+++_]+_$[_/_]+$_[__$]); 它基本上是alert("I love you") ,非常感谢! 如果只有我得到的帮助昨天,我还没有发布这个:( JavaScript很漂亮,供你参考: $_ = "true" __ = "false" _$ = […]

让电子邮件地址在网页上的机器人安全吗?

在网页上放置电子邮件地址时,请将它们放置为这样的文本: joe.somebody@company.com 或使用一个聪明的伎俩来欺骗电子邮件地址收割机机器人? 例如: HTML转义字符: joe.somebody@company.com Javascript Decrypter: function XOR_Crypt(EmailAddress) { Result = new String(); for (var i = 0; i < EmailAddress.length; i++) { Result += String.fromCharCode(EmailAddress.charCodeAt(i) ^ 128); } document.write(Result); } XOR_Crypt("êïå®óïíåâïäùÀãïíðáîù®ãïí"); 人类解码: joe.somebodyNOSPAM@company.com joe.somebody AT company.com 你使用什么,或者你甚至打扰?

你是否混淆商业Java代码?

我想知道是否有人在自己的商业产品上使用商业/免费的Java混淆器。 我只知道一个项目实际上在发布的ant构build步骤中有一个模糊的步骤。 你混淆了吗? 如果是这样,你为什么混淆? 这是否真的是保护代码的一种方式,还是对开发人员/pipe理人员来说更好? 编辑:好吧,我确切地说我的观点:你是否混淆保护你的知识产权(你的algorithm,你已经放入产品的工作)? 我不会因为安全原因而混淆,那是不对的。 所以我只是在谈论保护你的应用程序代码与竞争对手。 @staffan有一个好点: 远离链式代码stream的原因是,其中一些更改使JVM无法有效地优化代码。 实际上,它实际上会降低应用程序的性能。

如何正确deobfusacte Perl脚本?

我试图去混淆下面的Perl代码( 来源 ): #!/usr/bin/perl (my$d=q[AA GTCAGTTCCT CGCTATGTA ACACACACCA TTTGTGAGT ATGTAACATA CTCGCTGGC TATGTCAGAC AGATTGATC GATCGATAGA ATGATAGATC GAACGAGTGA TAGATAGAGT GATAGATAGA GAGAGA GATAGAACGA TC GATAGAGAGA TAGATAGACA G ATCGAGAGAC AGATA GAACGACAGA TAGATAGAT TGAGTGATAG ACTGAGAGAT AGATAGATTG ATAGATAGAT AGATAGATAG ACTGATAGAT AGAGTGATAG ATAGAATGAG AGATAGACAG ACAGACAGAT AGATAGACAG AGAGACAGAT TGATAGATAG ATAGATAGAT TGATAGATAG AATGATAGAT AGATTGAGTG ACAGATCGAT AGAACCTTTCT CAGTAACAGT CTTTCTCGC TGGCTTGCTT TCTAA CAACCTTACT G ACTGCCTTTC TGAGATAGAT […]

最好的解决scheme来保护PHP代码而不encryption

首先,我不是在寻找奇迹……我知道PHP是如何工作的,并且没有真正的方法来隐藏我的代码而不使用encryption。 但是,在运行的服务器上安装了扩展的代价。 我正在寻找不同的东西,虽然…我不想encryption我的代码,甚至混淆它。 有许多PHP脚本没有encryption/模糊代码,但它们是商业应用程序。 例如,vBulletin和/或IP.Board论坛应用程序。 我只是想知道这些人使用什么方法来处理他们的应用程序。 我也打开任何其他的build议。 请注意,我是一个人,不为公司工作。 我的产品也非常具体,它不会卖太多。 我只是想让你们知道,我不能咨询法律专业人士起诉某人或准备商业执照。 我只是寻找一种简单的方法来保护我的简单产品,如果确实有可能,不知何故…

如何隐藏网页中的JavaScript代码?

当通过浏览器查看源代码function查看源代码时,是否可以隐藏网页的HTML代码? 我知道有可能混淆代码,但我更喜欢它从视图源function隐藏 。