标签: security

Requirejs,Backbone和安全性

我实际上正在为我的公司开发一个单页应用程序,它涉及不同用户角色的不同视图,以防止没有足够权限的人访问他们不应该看到的数据,或者执行他们无权执行的功能.

我在后端使用PHP和REST API,所以我觉得我在那里相当安全,但我对客户端安全性一无所知.

我正在考虑在我的main.js中以这种方式存储具有当前用户角色的App变量:

require(['jquery',
    'underscore',
    'backbone',
    'marionette',
    'app',
    'routers/adminRouter',
    'routers/userRouter',
    ], function($, _, Backbone, Marionette, App, AdminRouter, UserRouter){

App.vent.on("routing:started", function(){
    Backbone.history.start();
});

App.addInitializer(function(){
    if(userRole==="admin"){
        App.Router = new AdminRouter;
    } else {
        App.Router = new UserRouter;
    }
    App.vent.trigger("routing:started");
});

App.addRegions({
   content: "#main",
   page: "#page",
   dialogs: "#dialogs"
});

App.start();

App.vars = {};

App.vars.userRole = userRole;
Run Code Online (Sandbox Code Playgroud)

App.js只是:

define([
   'underscore',
   'backbone',
   'marionette'
   ], function(_, Backbone){

       var App = new Backbone.Marionette.Application();
       return App;
});
Run Code Online (Sandbox Code Playgroud)

变量userRole只是一个全局变量,我在index.php页面上从我的服务器引导.这安全多少钱?有一种方法可以改变userRole页面加载的价值吗?或者App.vars.userRole在应用程序运行时进行更改?我无法App从控制台访问变量,但正如我所说,我对客户端编程非常新,我必须知道我是否可以依赖该变量的值.处理这种情况的最佳方法是什么?先感谢您.

javascript security requirejs backbone.js

1
推荐指数
1
解决办法
1161
查看次数

AES通过无效的IV正确解密一半字符串,这是通常的吗?

我正在测试此示例中的 AES加密函数.我发现如果我IV改为另一个随机数据,只有一部分文本将无法访问,另一部分将正确解密.

这是我的代码:

    public static string encrypt(string original, string key, string iv)
    {
        string enc;
        // Create a new instance of the RijndaelManaged
        // class.  This generates a new key and initialization 
        // vector (IV).
        // Encrypt the string to an array of bytes.
        byte[] encrypted =EncryptStringToBytes_Aes(original, Convert.FromBase64String(key), Convert.FromBase64String(iv));

        enc = Convert.ToBase64String(encrypted);

        return enc;
    }

    public static string decrypt(string encrypted, string key, string iv)
    {
        string decrypted;

        decrypted = DecryptStringFromBytes_Aes(Convert.FromBase64String(encrypted), Convert.FromBase64String(key), Convert.FromBase64String(iv));

        return decrypted;
    }
Run Code Online (Sandbox Code Playgroud)

这些都是我EncryptStringToBytes_Aes …

c# security cryptography aes

1
推荐指数
1
解决办法
948
查看次数

https有多安全?

我最近一直在研究HTTPS,以及它的安全性.

我去了一个https网站,它有一个有效的证书,并输入了我的用户名和密码.使用Fiddler,我解密了单击提交按钮后出现的请求,并且在包含键值对的字符串中有纯文本的用户名和密码(这不是查询字符串,而是post值).

任何人都可以告诉我为什么说HTTPS是安全的,因为我很容易使用外部应用程序获取用户名和密码?我的意思是它几乎是即时解密,当然黑客可以使用一个应用程序找出你正在制作的请求并解密它们,不是吗?

security https

1
推荐指数
1
解决办法
293
查看次数

JAVA Md5返回非确定性结果

我编写了以下函数来计算Java中的Md5校验和.

class Utils {
 public static String md5Hash(String input) {
        String result = "";
        try {
            System.out.println("Input=" + input);
            final MessageDigest md = MessageDigest.getInstance("MD5");
            md.reset();
            md.update(input.getBytes());
            result = md.digest().toString();
        } catch (Exception ee) {
            System.err.println("Error computing MD5 Hash");
        }
        return result;
    }
};
Run Code Online (Sandbox Code Playgroud)

Utils.md5Hash("abcde") 多次调用会产生不同的结果.我的理解是md5为字符串返回一个确定性和唯一的校验和.那是错的吗?另外请告诉我实施中的错误.谢谢

java security hash md5 md5sum

1
推荐指数
1
解决办法
868
查看次数

加密数据库密码字段的必要性如何

我听说为了安全问题,建议在数据库中加密密码字段.

如果我的网站只有我可以访问数据库.根据我们的网站政策,我对查看其他密码没有任何问题.

这是否也适用于我的网站或者还有一些其他安全原因可以告诉我.

security encryption passwords database-design

1
推荐指数
1
解决办法
816
查看次数

如何使用Java下载受保护的网页

我们有一个任务,设计一个可以下载任何网页源的类.但是,当我尝试测试我的代码并获取页面时http://anidb.net/perl-bin/animedb.pl?show=main- 没有任何工作.

像这样的标准代码失败:

import java.net.*;
import java.io.*;

public class URLReader {
    public static void main(String[] args) throws Exception {
        URL link = new URL("http://www.anidb.net/");
        BufferedReader in = new BufferedReader(
        new InputStreamReader(link.openStream()));

        String inputLine;
        while ((inputLine = in.readLine()) != null)
            System.out.println(inputLine);
        in.close();
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我得到的结果:

Šwq>²"¦§5´_ï__ÇUº=ôÙö?kŠ}~“bd`?l“Ïçz¢Çêõ>_"?j׉R“y}K¸\Ìc_DLÙªÏ_
    –óMm_¼_0”•ö°ËC_aí½sî¤ìÁS ‚>dC0ìs_–y¹ñ±ÏÝÜAø%È_äÖá__æ©A@,4x„ж_ëɃ?
Run Code Online (Sandbox Code Playgroud)

我已经尝试了一切:cookie,头文件,但似乎没有任何工作.如果你有一些暗示,我会很感激.

java security automation webpage download

1
推荐指数
1
解决办法
607
查看次数

多个盐保护密码

如果在散列密码之前使用salt,它将使散列更安全.这是有道理的,因为彩虹表攻击变得更加困难(不可能?).

如果你使用多种盐怎么办?例如 - 您检查日期是星期一,还是月份,小时等(或某种组合).然后你有一个存储字段的数据库:(userid,hash1,hash2,hash3 ......).

这会使信息更加(或更少)安全吗?

例:

1)用户注册密码为"PASS".2)系统(本例中为php)存储每天的值(md5($ password.$ this_day))(7个密码).到表密码,列hash_monday,hash_tuesday等.3)用户登录,脚本检查密码'hash _'.$ this_day匹配输入的内容.

security passwords hash salt

1
推荐指数
1
解决办法
610
查看次数

保护javascript游戏时机

我正在创建一个基于画布的游戏,它有一个重要的计时元素.完成游戏后,用户的完成时间将发送到服务器上的PHP/MySQL,以便与其他玩家进行比较.

服务器端计时(即提交请求时间的开始请求时间)似乎可能会导致加载时间影响用户的实际时间,因此在这种情况下效率低下.

我遇到的问题是确定一种方法来确保发送的时间是合法的.如何阻止某人使用他们的控制台并以提交虚假时间的方式编辑客户端代码?

任何帮助将不胜感激.

javascript php security

1
推荐指数
1
解决办法
221
查看次数

登录验证后将SSL重定向到非SSL

我有一个Cakephp 2+站点需要某些操作来要求SSL连接(即登录,密码重置等),但我不要求整个站点是安全的.在实现这一点时,我发现在SSL和非SSL页面之间移动时没有保存Session.我在堆栈/sf/answers/844766961/上发现了这个问题解决了我的问题,但我想知道成本是多少.

上述问题的答案需要在lib/Cake/Model/Datasource /中注释掉一行,如下所示:

if (!isset($sessionConfig['ini']['session.cookie_secure']) && env('HTTPS')){
   // $sessionConfig['ini']['session.cookie_secure'] = 1; // <-- Commented Out
}
Run Code Online (Sandbox Code Playgroud)

这样做有什么安全后果吗?另外,有没有办法在不影响蛋糕核心文件的情况下执行此操作,因为这通常不受欢迎?

提前致谢.

security ssl cakephp cakephp-2.0

1
推荐指数
2
解决办法
408
查看次数

使用dirname(__ FILE__)是否存在安全风险?

看看Joomla的代码我看到在索引的第一行,它定义了安装的基本路径

dirname(__FILE__)
Run Code Online (Sandbox Code Playgroud)

这是一个网站可能存在风险的字体,我的意思是如果一个不受控制的错误消息显示Joomla目录的内部路径,因为例如一个失败的include,它可以用来对网站进行某种攻击?如果是,使用此功能是否方便?欢迎任何想法.

谢谢

php security dirname

1
推荐指数
1
解决办法
568
查看次数