小编Mic*_*ael的帖子

C++ 位图转 Base64

我有以下代码来创建位图:

//raw data
PBYTE firstPixel = (PBYTE)((PBYTE)AnsiBdbRecord) + sizeof(WINBIO_BDB_ANSI_381_RECORD);

// declare other bmp structures
BITMAPFILEHEADER bmfh;
BITMAPINFOHEADER info;
RGBQUAD rq[256];
// create the grayscale palette 
for (int i = 0; i<256; i++)
{
    rq[i].rgbBlue = i;
    rq[i].rgbGreen = i;
    rq[i].rgbRed = i;
    rq[i].rgbReserved = 0;
}
//RGBQUAD bl = { 0,0,0,0 };  //black color
//RGBQUAD wh = { 0xff,0xff,0xff,0xff }; // white color

// andinitialize them to zero
memset(&bmfh, 0, sizeof(BITMAPFILEHEADER));
memset(&info, 0, sizeof(BITMAPINFOHEADER));

// fill the fileheader with data …
Run Code Online (Sandbox Code Playgroud)

c++ bitmap biometrics

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

同步器令牌模式:如何防止 XSS 和 CSRF 的组合?

我一直在研究 OWASP 建议以防止 CSRF 攻击(https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF)_Prevention_Cheat_Sheet)。

现在,我不明白的是,这将如何防止 XSS 和 CSRF 攻击的组合攻击。假设我们有以下攻击场景:


  1. 攻击者能够执行存储型 XSS 攻击,以便每次用户访问该页面时都会执行攻击者在网站上插入的脚本。

  2. 该脚本将完全重新设计 DOM,例如,攻击者的脚本不再需要用户提供一些不相关的信息的原始表单,而是重新设计该表单,以便将该表单重新设计为添加具有管理员权限的用户的表单。请注意,用户不会看到这一点,因为字段的标签将保持不变。只是 POST 会有所不同。

  3. 攻击者知道该网站使用反 CSRF 令牌。查看 OWASP 建议:“(..)应用程序应包含一个具有通用名称(如“CSRFToken”)的隐藏输入参数”,攻击者知道大多数网站在页面上的某处都会有一个带有此 id 的隐藏字段。

  4. 攻击者确保该字段的值也在伪造的 POST 中提交。即使攻击者不知道这个隐藏字段的值,它也可以在 POST 中指定该值应与请求一起发送。这是可能的,因为用户的 DOM 已被修改,请求将来自用户的浏览器,用户的 cookie 也会随请求一起发送。

  5. 用户提交表单,然后创建假用户。


在我看来,仅使用 CSRF 令牌无法避免这种情况。或者同步器模式的隐含假设是 XSS 攻击已被消除?

security xss csrf owasp

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

标签 统计

biometrics ×1

bitmap ×1

c++ ×1

csrf ×1

owasp ×1

security ×1

xss ×1