我说的是没有上限分数的动作游戏,无法通过重放动作等来验证服务器上的分数.
我真正需要的是Flash/PHP中可能的最强加密,以及一种阻止人们通过我的Flash文件调用PHP页面的方法.我曾经尝试过一些简单的方法,可以对单个分数进行多次调用,完成校验和/斐波那契序列等,并且还使用Amayeta SWF加密对SWF进行模糊处理,但最终都被黑客攻击了.
感谢StackOverflow的回复,我现在从Adobe找到了更多信息 - http://www.adobe.com/devnet/flashplayer/articles/secure_swf_apps_12.html和https://github.com/mikechambers/as3corelib - 我想我可用于加密.不知道这会让我想到CheatEngine.
如果它们不同,我需要知道AS2和AS3的最佳解决方案.
主要问题似乎是TamperData和LiveHTTP标题,但我知道还有更高级的黑客工具 - 比如CheatEngine(感谢Mark Webster)
在常见的PHP安装中进行双向加密的最简单方法是什么?
我需要能够使用字符串密钥加密数据,并使用相同的密钥在另一端解密.
安全性并不像代码的可移植性那么重要,因此我希望能够尽可能简化事情.目前,我正在使用RC4实现,但如果我能找到本机支持的东西,我想我可以节省很多不必要的代码.
我的意思是:
Original String + Salt or Key --> Encrypted String
Encrypted String + Salt or Key --> Decrypted (Original String)
Run Code Online (Sandbox Code Playgroud)
也许是这样的:
"hello world!" + "ABCD1234" --> Encrypt --> "2a2ffa8f13220befbe30819047e23b2c" (may be, for e.g)
"2a2ffa8f13220befbe30819047e23b2c" --> Decrypt with "ABCD1234" --> "hello world!"
Run Code Online (Sandbox Code Playgroud)
尝试使用Crypt_Blowfish,但它对我不起作用.
Google会像这样返回json:
throw 1; <dont be evil> { foo: bar}
Run Code Online (Sandbox Code Playgroud)
和Facebooks ajax有这样的json:
for(;;); {"error":0,"errorSummary": ""}
Run Code Online (Sandbox Code Playgroud)
作为对安全目的的回应:
如果刮刀位于另一个域上,则必须使用script标记来获取数据,因为XHR不会跨域工作.即使没有for(;;);攻击者如何获取数据?它没有分配给变量,所以它不会被垃圾收集,因为它没有引用它?
基本上,为了获得数据跨域,他们必须这样做
<script src="http://target.com/json.js"></script>
Run Code Online (Sandbox Code Playgroud)
但即使没有崩溃脚本,攻击者也不能使用任何Json数据而不将其分配给您可以全局访问的变量(在这些情况下不是这样).崩溃代码没有任何效果,因为即使没有它,他们也必须使用服务器端脚本来使用其站点上的数据.
有没有办法从命令行重置所有(或只是禁用安全设置)没有用户/密码,因为我已设法完全锁定自己Jenkins?
我有一个小的Bash脚本,用于访问twitter并在某些情况下弹出Growl通知.什么是处理脚本存储密码的最佳方法?
我想将这个脚本提交给git repo并在GitHub上提供它,但我想知道在执行此操作时保持登录/密码私有的最佳方法是什么.目前,密码存储在脚本本身中.我无法在推送之前将其删除,因为所有旧提交都将包含密码.没有密码的开发不是一种选择.我想我应该将密码存储在外部配置文件中,但我想我会检查是否有一种既定的方法来处理这个问题,然后再尝试把它放在一起.
我的团队交出了一些生成随机令牌的服务器端代码(用Java),我对此有一个问题 -
这些令牌的目的是相当敏感的 - 用于会话ID,密码重置链接等.所以他们确实需要加密随机,以避免有人猜测它们或蛮力强制它们.令牌是"长",所以它是64位长.
代码当前使用java.util.Random该类来生成这些令牌.文档([ http://docs.oracle.com/javase/7/docs/api/java/util/Random.html] [1 ])java.util.Random清楚地说明了以下内容:
java.util.Random的实例不具有加密安全性.相反,请考虑使用SecureRandom来获取加密安全的伪随机数生成器,以供安全敏感应用程序使用.
但是,代码当前使用的方式java.util.Random是 - 它实例化java.security.SecureRandom类,然后使用该SecureRandom.nextLong()方法获取用于实例化java.util.Random类的种子.然后它使用java.util.Random.nextLong()方法生成令牌.
所以我现在的问题 - 鉴于java.util.Random正在使用种子,它仍然是不安全的java.security.SecureRandom吗?我是否需要修改代码以便它java.security.SecureRandom专门用于生成令牌?
目前代码种子是Random启动时的一次
cer,pvk和pfx文件有什么区别?另外,我保留哪些文件以及我希望将哪些文件交给我的反对方?
我刚刚在网上看到了ASP.NET中新发现的安全漏洞.你可以在这里阅读详细信息.
问题在于ASP.NET实现AES加密算法的方式,以保护这些应用程序生成的cookie的完整性,以便在用户会话期间存储信息.
这有点模糊,但这里有一个更令人恐惧的部分:
攻击的第一阶段需要几千个请求,但一旦成功并且攻击者获得了密钥,它就完全是隐秘的.所需的加密知识是非常基本的.
总而言之,我对安全性/密码学不够熟悉,但要知道这是否真的那么严重.
那么,是否所有ASP.NET开发人员都担心这种技术可以在几秒钟内拥有任何ASP.NET网站或者什么?
这个问题如何影响普通的ASP.NET开发人员?它会影响我们吗?在现实生活中,这个漏洞的后果是什么?最后:是否有一些可以防止此漏洞的解决方法?
谢谢你的回答!
所以,这基本上是一种"填充oracle"类型的攻击.@Sri提供了一个很好的解释,说明这种类型的攻击是什么意思.这是一个关于这个问题的令人震惊的视频!
关于此漏洞的严重性:是的,它确实很严重.它允许攻击者了解应用程序的机器密钥.因此,他可以做一些非常不需要的事情.
以下是一些我没有解决问题的良好实践,但有助于提高Web应用程序的一般安全性.
现在,让我们关注这个问题.
解决方案
Application_Error或者Error.aspx放一些随机延迟的代码.(生成一个随机数,并使用Thread.Sleep长时间休眠.)这将使攻击者无法确定您的服务器上究竟发生了什么.其他一些想法
感谢所有回答我问题的人.我不仅了解了这个问题,还了解了网络安全性.我将@ Mikael的答案标记为已被接受,但其他答案也非常有用.
安全验证ssl证书所需的一系列步骤是什么?我(非常有限)的理解是,当您访问https站点时,服务器将证书发送到客户端(浏览器),浏览器从该证书获取证书的颁发者信息,然后使用它来联系发布者,并以某种方式比较有效性证书.
security ×10
cryptography ×3
php ×3
encryption ×2
.net ×1
actionscript ×1
ajax ×1
algorithm ×1
asp.net ×1
bash ×1
certificate ×1
command-line ×1
git ×1
github ×1
java ×1
javascript ×1
jenkins ×1
json ×1
linux ×1
passwords ×1
public-key ×1
random ×1
ssl ×1