[英]How to sandbox clojure.string/blank? with Clojail in Clojure?
[英]Clojail does not throw Security Exception in Clojure
我正在使用clojail庫進行沙盒處理,但它沒有按預期運行。
這是代碼:
(ns jail.core
(:require [clojail.core :as s]
[clojail.testers :as t]))
(def my-tester [(t/blacklist-objects [clojure.lang.RT])
(t/blanket "clojail")])
(def sb (s/sandbox my-tester))
(println (sb '(do
(import clojure.lang.RT)
(RT/errPrintWriter))))
在(import clojure.lang.RT)
行,它必須拋出SecurityException但它沒有。
它返回PrintWriter(errPrintWriter)對象。
事實證明,如果我不傳遞類對象import
宏,它只是工作,但我認為這種行為有點奇怪。
這里:
(println (sb '(do
clojure.lang.RT
(RT/errPrintWriter))))
現在我得到安全異常, import
宏以某種方式阻止clojail拋出安全異常 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.