
Research
Two Malicious Rust Crates Impersonate Popular Logger to Steal Wallet Keys
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
将HTML转化为Ast后处理,实现HTML的无状态计算。
npm i abs-html
import {
parseHtmlToAst,
buildAstToHtml,
diffAst,
patchAst,
} from 'abs-html'
const ast = parseHtmlToAst(`
<!DOCTYPE html>
<html>
<head>
<title>xxx</title>
</head>
<body>
<-- comment -->
<div class="dog">content</div>
<div id="xx">111</div>
<div class="cat">cat</div>
<img src="http://xxx.com/a.jpg" />
<div></div>
<my-app />
</body>
</html>
`)
/**
[
"!DOCTYPE",
{
"html": null
},
[
"html",
null,
[
"head",
null,
[
"title",
null,
"xxx"
]
],
[
"body",
null,
[
"#comment",
null,
" comment "
],
[
"div",
{
"class": "dog"
},
"content"
],
[
"div",
{
"id": "xx"
},
"111"
],
[
"div",
{
"class": "cat"
},
"cat"
],
[
"img",
{
"src": "http://xxx.com/a.jpg"
}
],
[
"div",
null,
""
],
[
"my-app"
]
]
]
]
*/
const html = buildAstToHtml(ast)
/**
<!DOCTYPE html>
<html>...</html>
*/
查看ast2相对于ast1而言,有哪些变化。
const mutations = diffAst(ast1, ast2)
将mutations作用于一个ast,得到一个新的经过改变的ast。 如果tiny没有传,会通过前5个mutation的属性存在情况自动判定。
const ast2 = patchAst(ast, mutations)
注意,由于diff算法的一些局限性,loose参数为true时,可能无法准确还原换行。
FAQs
Abstract HTML
We found that abs-html demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
Research
A malicious package uses a QR code as steganography in an innovative technique.
Research
/Security News
Socket identified 80 fake candidates targeting engineering roles, including suspected North Korean operators, exposing the new reality of hiring as a security function.