陈东 - 利用Rust重塑移动应用开发-230618第三届中国 Rust 开发者大会 利用 Rust 重塑移动应用开发 陈东 Aaron Chen CTO AccountLabs Rust China Conf 2023 2023 移动应用开发有那些选择? 1. Native 2. Flutter 3. React Native ? 利用 Rust 重塑移动应用开发 React Native is an open-source codebase - Hot reload - Rendering Engine 利用 Rust 重塑移动应用开发 跨平台开发的优势和局限性 Pros: - Fast - Single Codebase - Third-party support (Javascript better than Dart) 利用 Rust 重塑移动应用开发 跨平台开发的优势和局 限性 Cons: - Existing Codebase 跨平台开发到到底 应该跨什么? UI or Logic ? 利用 Rust 重塑移动应用开发 Rust 在移动端应 用的价值 Rust is the only advanced choice for cross platform development. 利用 Rust 重塑移动应用开发 Rust 的特点 Why Rust? - Cross platform0 码力 | 22 页 | 2.10 MB | 1 年前3
10 WEB攻击与防护技术 徐震 杨亮 《PHP语⾔程序设计》3 1.2.安全威胁 1.2.安全威胁 n SANS年发布的全球20大安全风险排行榜上,Web应 用安全漏洞名列前茅,攻击者利用最多的漏洞是SQL 注入及跨站脚本 n 根据国家计算机网络应急技术处理协调中心(简称 CNCERT/CC)上半年的工作报告显示,网站漏洞百出, 被篡改的大陆网站数量明显上升,总数达到28367个, 比去年全年增加近16% 1.3. 相关政策、法规(1) IDS, OS加固) 无法检测并阻止应用层攻击 网络层 应用层 在应用层,我们的安全边界存在巨大 的漏洞!!! 提纲 一、背景概述 二、典型攻击 三、攻防原理 四、防护产品体系 3.1. SQL注入 16 概述 n SQL Injection q 攻击者利用WEB应用程序对用户输入验证上的疏忽, 在输入的数据中包含对某些数据库系统有特殊意义 的符号或命令,让攻击者有机会直接对后台数据库 默认允许很多系统函数(如xp_cmdshell, OPENROWSET 等) 20 原理 n SQL注入步骤 q 找出数据入口; q 注入数据; q 检测响应中的异常; n SQL注入工具 q SQL漏洞扫描器:SQLIer 、SQLMap 、SQLID 、SQL Power Injecto 、SQLNinja q ASP、JSP注入:NBSI3.0、啊d注入工具、小明王注入工具等0 码力 | 114 页 | 3.65 MB | 1 年前3
Go Web编程exe) 由go build产生 DIR.test(.exe) 由go test -c产生 MAINFILE(.exe) 由go build MAINFILE.go产生 我一般都是利用这个命令清除编译文件,然后github递交源码,在本机测试的时候这些编译文件都是和系统相关的, 但是对于源码管理来说没必要 go fmt go fmt 有过C/C++经验的读者会知道,一些人 // use i default: // 当c阻塞的时候执行这里 } 超时 超时 有时候会出现goroutine阻塞的情况,那么我们如何避免整个的程序进入阻塞的情况呢?我们可以利用select来设置 超时,通过如下的方式实现: func main() { c := make(chan int) o := make(chan bool) go func() HTTP协议是建立在TCP协议之上的,因此TCP攻击一样会影响HTTP的通讯,例如比较常见的一些攻击:SYN Flood是当 前最流行的DoS(拒绝服务攻击)与DdoS(分布式拒绝服务攻击)的方式之一,这是一种利用TCP协议缺陷,发送大 量伪造的TCP连接请求,从而使得被攻击方资源耗尽(CPU满负荷或内存不足)的攻击方式。 HTTP请求包(浏览器信息) HTTP请求包(浏览器信息) 我们先来看看Request包的结构0 码力 | 295 页 | 5.91 MB | 1 年前3
2022年美团技术年货 合辑879 工程效能 CI/CD 之流水线引擎的建设实践 912 美团外卖搜索基于 Elasticsearch 的优化实践 933 美团图灵机器学习平台性能起飞的秘密(一) 953 提升资源利用率与保障服务质量,鱼与熊掌不可兼得? 971 标准化思想及组装式架构在后端 BFF 中的实践 992 外卖广告大规模深度学习模型工程实践 | 美团外卖广告工程实践专题连载 1013 数据库全量 数据治理一体化实践之体系化建模 1263 vi > 2022年美团技术年货 运维 / 安全 1277 数字化新业态下数据安全创新——Token 化 1277 Linux 中基于 eBPF 的恶意利用与检测机制 1293 如何应对开源组件风险?软件成分安全分析(SCA)能力的建设与演进 1328 算法 < 1 YOLOv6:又快又准的目标检测框架开源啦 作者:楚怡 凯衡 等 1. 概述 YOLOv5/YOLOX 使用的 Backbone 和 Neck 都基于 CSPNet[5] 搭建,采用了多分 支的方式和残差结构。对于 GPU 等硬件来说,这种结构会一定程度上增加延时,同 时减小内存带宽利用率。下图 2 为计算机体系结构领域中的 Roofline Model[8] 介绍 图,显示了硬件中计算能力和内存带宽之间的关联关系。 4 > 2022年美团技术年货 图 2 Roofline Model0 码力 | 1356 页 | 45.90 MB | 1 年前3
Rust语言核心竞争力-庄晓立wikipedia.org/wiki/System_programming 系统编程 • 对硬件的控制(嵌入式, OS) • 对系统底层的控制(OS, kernel, driver) • 对CPU和内存的高效利用(Server, OS) • 对运算性能的高要求 • 对系统安全和内存安全的强需求 重点项目&热门领域 • 大数据 • 云计算 • 物联网 • 航空航天 • 超级计算机 • 科学运算/机器学习 靠 谱 你能买最新硬件,对手也能,无助于提升竞争力 物联网 • 需要大批量部署,必须控制硬件成本 • 受限于成本控制,硬件性能不强 • 受限于电池供电,功耗不能高 这就要求系统和应用软件要高效利用硬件 程序运行在VM上,或后台跑GC 白白浪费了宝贵的CPU和内存资源 Rust在系统编程领域 面临极其强大的竞争对手 嵌入式 C/Rust 系统编程 C/C++/C++1x/Rust Web开发 极小的运行时开销(与C语言相当) • Zero-cost abstractions • 无垃圾收集器(GC) • 无虚拟机(JVM/.Net) • 无解释器(Python/JS) • 运行效率很高(与C语言相当) • 充分高效利用CPU和内存等系统资源 零运行时 零开销原则/zero-overhead principle • What you don't use, you don't pay for • What you0 码力 | 51 页 | 1.09 MB | 1 年前3
01. 邓良驹 编写更安全的Python代码 不要以为 Star 多的包就不存在漏洞; 更不要以为 PyPI 源中的包就不存在恶意代码; 不要以为你import的就是你实际要import的*; 每个 PyPI 包都可能存在前述所有风险点, 有的甚至是故意、恶意为之。 应对: 谨慎选择第三方 PyPI 包,尽量少导入 PyPI 包; 利用 https://pyup.io/ 等服务保持检查和更新依赖; 利用 Chef InSpect 落实代码安全规范的检查。 落实代码安全规范的检查。 *参考资料:“驹说码事” 《如何import一个不存在的对象》 https://mp.weixin.qq.com/s/0_ivKVDU-nKf3r-c96sqrA 利用 Bandit 检查代码 记不住那么多点?交给Bandit! https://github.com/PyCQA/bandit https://bandit.readthedocs.io/en/latest/ 内部逻辑也应该做检查,例如购买东西以后余额应该降低而不是升高; 3. 奥卡姆剃刀原则,用能达到目的的最简单的设计、配置,减少缺陷的可 能性; 4. 最小权限原则,仅用恰好够用的权限去执行代码,减少越权漏洞; 5. 定时清理缓存数据,以及非业务代码的固有数据,减少入侵风险; 6. 在发布代码前,使用 Bandit 工具检查代码,规避最常见的不安全写法; 7. 敏感信息一定加密后使用; 8. 不要将敏感0 码力 | 18 页 | 988.40 KB | 1 年前3
2020美团技术年货 算法篇真实的场景中,IO OP 的数量相对固定。所以经过一段时间的累计,OP 的数量会趋 于稳定,新特征只需基于已有的 OP 和特征组合即可实现,非常的高效。 4.1.3 配置化的模型表达 特征可以用利用 OP、使用表达式的方式去表现,但特征还可能需要经过 Transform- er 的变换。为此,我们同样为模型构建一套可解释的 JSON 表达模板,模型中每一个 特征可以通过一个 JSON 对象进行配置,以一个输入到 在这个过程中,为了使整个流程异步非阻塞,我们要求引用的服务提供异步接口。 若部分服务未提供异步接口,可以将其包装成伪异步。这一套异步流程使得单机 (16c16g)的服务容量提升超过 100%,提高了资源的利用率。 4.2.2 预估的性能及表达式的开销 框架的优势:得益于分布式,纯异步流程,以及在特征 OP 内部做的各类优化(公用 特征 、RPC 聚合等),从老框架迁移到 Augur 后,上千份文档的深度模型预估性能 Poker+Augur 则构成了一个好用的在线预估平台。下图是在线预 估服务管理平台的功能架构: 首先是预估核心特征的管理,上面说到我们构建了语言化的特征表达式,这其实是个 较为常见的思路。Poker 利用 Augur 提供的丰富接口,结合算法的使用习惯,构建 算法 < 17 了一套较为流畅的特征管理工具。可以在平台上完成新增、测试、上线、卸载、历史 回滚等一系列操作。同时,还可以查询特征被服务中的哪些模型直接或者间接引用,0 码力 | 317 页 | 16.57 MB | 1 年前3
简谈 Rust 与国密 TLS - 王江桐的一些问题出在用户的使用错 误,即文档、API、等相关说明的缺失; • 37.2%的漏洞在于实现时的系统内存错误,其中19.4%是buffer问题,17.7%是资源管理问题; • 对于CVSS评分为 7.0 - 10.0 的严重错误中,只有 3.57% - 11.11% 的漏洞是密码学相关,意味着其他的 漏洞更多出自系统内存错误以及其他分类; • 密码系统问题发现时间长,中位数为4.18年; 18年; • 大型的C/C++项目很难保证代码安全性; • 以 OpenSSL 为例,平均每1000行代码就会引入一个攻击点,具有安全漏洞。 密码系统实现的潜在问题 Potential Problems of Cryptography Systems Rust China Conf 2022 – 2023, Shanghai, China • 数据来源于 OpenSSL 页面 Vulnerabilities 内存损坏,占总问题 的 43.2%,High 及 Critical 问题的 46.7%。 Low Medium High Critical Total 解引用空指针 0 6 1 0 7 协议漏洞 1 0 0 0 1 实现逻辑错误 7 5 4 1 17 计算溢出 0 0 1 0 1 缓冲区溢出 0 1 3 1 5 内存损坏 0 2 1 1 4 指令注入 0 0 0 2 2 Total0 码力 | 44 页 | 3.70 MB | 1 年前3
FISCO BCOS 2.9.0 中文文档分配功能,非链管理员账户无权限分配功能。 操作内容 本文档分别对以下功能进行权限控制的操作介绍: • 授权账户为链管理员 • 授权账户为系统管理员 • 授权部署合约和创建用户表 • 授权利用CNS部署合约 • 授权管理节点 • 授权修改系统参数 • 授权账户写用户表 环境配置 配置并启动FISCO BCOS 2.0区块链节点和控制台,请参考安装文档。 权限控制工具 FISCO 账户3为普通账 户。链管理员账户拥有权限管理的权限,即能分配权限。系统管理员账户可以管理系统相关功能的权 限,每一种系统功能权限都需要单独分配,具体包括部署合约和创建用户表的权限、管理节点的权限、 利用CNS部署合约的权限以及修改系统参数的权限。链管理员账户可以授权其他账户为链管理员账户或 系统管理员账户,也可以授权指定账号可以写指定的用户表,即普通账户。 链初始状态,没有任何权限账户记录。现在 也应该只分配给少数账户,否则链上可能会出现各种废表。 授权利用CNS部署合约 控制台提供3个涉及CNS的命令,如下所示: 注 意 : 其 中deployByCNS命 令 受 权 限 可 以 控 制 , 且 同 时 需 要 部 署 合 约 和 使 用CNS的 权 限,callByCNS和queryCNS命令不受权限控制。 登录账户1的控制台,授权账户2拥有利用CNS部署合约的权限。 172 Chapter0 码力 | 1489 页 | 107.09 MB | 1 年前3
FISCO BCOS 3.6.0 中文文档分配功能,非链管理员账户无权限分配功能。 操作内容 本文档分别对以下功能进行权限控制的操作介绍: • 授权账户为链管理员 • 授权账户为系统管理员 • 授权部署合约和创建用户表 • 授权利用CNS部署合约 • 授权管理节点 • 授权修改系统参数 • 授权账户写用户表 环境配置 配置并启动FISCO BCOS 2.0区块链节点和控制台,请参考安装文档。 权限控制工具 FISCO 账户3为普通账 户。链管理员账户拥有权限管理的权限,即能分配权限。系统管理员账户可以管理系统相关功能的权 限,每一种系统功能权限都需要单独分配,具体包括部署合约和创建用户表的权限、管理节点的权限、 利用CNS部署合约的权限以及修改系统参数的权限。链管理员账户可以授权其他账户为链管理员账户或 系统管理员账户,也可以授权指定账号可以写指定的用户表,即普通账户。 链初始状态,没有任何权限账户记录。现在 也应该只分配给少数账户,否则链上可能会出现各种废表。 授权利用CNS部署合约 控制台提供3个涉及CNS的命令,如下所示: 注 意 : 其 中deployByCNS命 令 受 权 限 可 以 控 制 , 且 同 时 需 要 部 署 合 约 和 使 用CNS的 权 限,callByCNS和queryCNS命令不受权限控制。 登录账户1的控制台,授权账户2拥有利用CNS部署合约的权限。 172 Chapter0 码力 | 1489 页 | 107.09 MB | 1 年前3
共 305 条
- 1
- 2
- 3
- 4
- 5
- 6
- 31













