Skip to content

Commit 47849fc

Browse files
committed
fix: Add FlibInstance to allowed classes and use restricted_loads for deserialization
1 parent f19ad24 commit 47849fc

File tree

2 files changed

+4
-2
lines changed

2 files changed

+4
-2
lines changed

apps/common/util/common.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,8 @@
3131
ALLOWED_CLASSES = {
3232
("builtins", "dict"),
3333
('uuid', 'UUID'),
34-
("application.serializers.application_serializers", "MKInstance")
34+
("application.serializers.application_serializers", "MKInstance"),
35+
("function_lib.serializers.function_lib_serializer", "FlibInstance")
3536
}
3637

3738

apps/function_lib/serializers/function_lib_serializer.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
from common.exception.app_exception import AppApiException
2323
from common.field.common import UploadedFileField, UploadedImageField
2424
from common.response import result
25+
from common.util.common import restricted_loads
2526
from common.util.field_message import ErrMessage
2627
from common.util.function_code import FunctionExecutor
2728
from common.util.rsa_util import rsa_long_decrypt, rsa_long_encrypt
@@ -338,7 +339,7 @@ def import_(self, with_valid=True):
338339
user_id = self.data.get('user_id')
339340
flib_instance_bytes = self.data.get('file').read()
340341
try:
341-
flib_instance = pickle.loads(flib_instance_bytes)
342+
flib_instance = restricted_loads(flib_instance_bytes)
342343
except Exception as e:
343344
raise AppApiException(1001, _("Unsupported file format"))
344345
function_lib = flib_instance.function_lib

0 commit comments

Comments
 (0)