自动检查R软件包是否存在任何恶意或可疑的方法?

时间:2019-10-23 04:03:12

标签: r devtools r-package cran

我发现自己仔细阅读了github的一些晦涩部分,并找到了一些用R编写的真正的宝石。但是,鉴于某些程序包具有零审查权(与CRAN上的程序包不同),我对安装和使用它们有些不安(即devtools::install_github("user/repo")

解决此问题的一种方法可能是编写一个将R包读取为文本并标记任何可疑内容的函数。一个非常原始的版本看起来像:

例如

flag_sus <- function(r_file) {
  file <- readLines(r_file)
  flag <- file %>% str_detect("system")
  if(length(flag) > 0) { print("Contains suspicious code") }
  }

但是我想知道是否有(更好)更好的方法?

注意

  • 一种降低风险的快速方法是,尽可能使用CRAN版本的软件包,但这显然并不总是有用的(因为许多软件包仅存在于CRAN之外)

0 个答案:

没有答案