78 lines
17 KiB
Plaintext
78 lines
17 KiB
Plaintext
INPUT JobApplication.aslan
|
|
SUMMARY ATTACK_FOUND
|
|
GOAL: sod_securitySod2_1(user1_manager,fnat(n9,0,0),fnat(n7,0,0))
|
|
|
|
DETAILS
|
|
STRONGLY_TYPED_MODEL
|
|
BOUNDED_NUMBER_OF_SESSIONS
|
|
BOUNDED_SEARCH_DEPTH
|
|
BOUNDED_MESSAGE_DEPTH
|
|
|
|
BACKEND SATMC VERSION 3.3.1_(September_2011)
|
|
|
|
STATISTICS TIME 2779 ms
|
|
upperBoundReached false boolean
|
|
graphLeveledOff no boolean
|
|
satSolver minisat solver
|
|
maxStepsNumber 80 steps
|
|
stepsNumber 16 steps
|
|
atomsNumber 6388 atoms
|
|
clausesNumber 22421 clauses
|
|
encodingTime 2.679 seconds
|
|
solvingTime 0.0 seconds
|
|
if2sateCompilationTime 0.1 seconds
|
|
|
|
TRACE:
|
|
0
|
|
CLAUSES:{ }
|
|
RULES: w_usertask1(fnat(n0,0,0))
|
|
1
|
|
CLAUSES:{ rbac_ac(user1_clerk,clerk,usertask1),rbac_ac(user1_clerk,clerk,usertask2),rbac_ac(user1_clerk,clerk,usertask5),rbac_ac(user1_clerk,clerk,usertask7),rbac_ac(user1_manager,manager,usertask3),rbac_ac(user1_manager,manager,usertask4),rbac_ac(user1_manager,manager,usertask6),rbac_ac(user1_supervisor,supervisor,usertask8),rbac_ac(user1_supervisor,supervisor,usertask9),rbac_ac(user2_clerk,clerk,usertask1),rbac_ac(user2_clerk,clerk,usertask2),rbac_ac(user2_clerk,clerk,usertask5),rbac_ac(user2_clerk,clerk,usertask7),rbac_ac(user2_manager,manager,usertask3),rbac_ac(user2_manager,manager,usertask4),rbac_ac(user2_manager,manager,usertask6),rbac_ac(user2_supervisor,supervisor,usertask8),rbac_ac(user2_supervisor,supervisor,usertask9) }
|
|
RULES: authorizeTaskExecution(user1_clerk,clerk,usertask1,fnat(n0,0,0))
|
|
2
|
|
CLAUSES:{ rbac_ac(user1_clerk,clerk,usertask1),rbac_ac(user1_clerk,clerk,usertask2),rbac_ac(user1_clerk,clerk,usertask5),rbac_ac(user1_clerk,clerk,usertask7),rbac_ac(user1_manager,manager,usertask3),rbac_ac(user1_manager,manager,usertask4),rbac_ac(user1_manager,manager,usertask6),rbac_ac(user1_supervisor,supervisor,usertask8),rbac_ac(user1_supervisor,supervisor,usertask9),rbac_ac(user2_clerk,clerk,usertask1),rbac_ac(user2_clerk,clerk,usertask2),rbac_ac(user2_clerk,clerk,usertask5),rbac_ac(user2_clerk,clerk,usertask7),rbac_ac(user2_manager,manager,usertask3),rbac_ac(user2_manager,manager,usertask4),rbac_ac(user2_manager,manager,usertask6),rbac_ac(user2_supervisor,supervisor,usertask8),rbac_ac(user2_supervisor,supervisor,usertask9) }
|
|
RULES: h_taskExecution(user1_clerk,clerk,usertask1,fnat(n0,0,0),in_usertask1,out_usertask1)
|
|
3
|
|
CLAUSES:{ rbac_ac(user1_clerk,clerk,usertask1),rbac_ac(user1_clerk,clerk,usertask2),rbac_ac(user1_clerk,clerk,usertask5),rbac_ac(user1_clerk,clerk,usertask7),rbac_ac(user1_manager,manager,usertask3),rbac_ac(user1_manager,manager,usertask4),rbac_ac(user1_manager,manager,usertask6),rbac_ac(user1_supervisor,supervisor,usertask8),rbac_ac(user1_supervisor,supervisor,usertask9),rbac_ac(user2_clerk,clerk,usertask1),rbac_ac(user2_clerk,clerk,usertask2),rbac_ac(user2_clerk,clerk,usertask5),rbac_ac(user2_clerk,clerk,usertask7),rbac_ac(user2_manager,manager,usertask3),rbac_ac(user2_manager,manager,usertask4),rbac_ac(user2_manager,manager,usertask6),rbac_ac(user2_supervisor,supervisor,usertask8),rbac_ac(user2_supervisor,supervisor,usertask9) }
|
|
RULES: w_servicetask1(fnat(n0,0,0),fnat(n1,0,0))
|
|
4
|
|
CLAUSES:{ rbac_ac(user1_clerk,clerk,usertask1),rbac_ac(user1_clerk,clerk,usertask2),rbac_ac(user1_clerk,clerk,usertask5),rbac_ac(user1_clerk,clerk,usertask7),rbac_ac(user1_manager,manager,usertask3),rbac_ac(user1_manager,manager,usertask4),rbac_ac(user1_manager,manager,usertask6),rbac_ac(user1_supervisor,supervisor,usertask8),rbac_ac(user1_supervisor,supervisor,usertask9),rbac_ac(user2_clerk,clerk,usertask1),rbac_ac(user2_clerk,clerk,usertask2),rbac_ac(user2_clerk,clerk,usertask5),rbac_ac(user2_clerk,clerk,usertask7),rbac_ac(user2_manager,manager,usertask3),rbac_ac(user2_manager,manager,usertask4),rbac_ac(user2_manager,manager,usertask6),rbac_ac(user2_supervisor,supervisor,usertask8),rbac_ac(user2_supervisor,supervisor,usertask9) }
|
|
RULES: atask_execution(servicetask1,fnat(n1,0,0),in_servicetask1,out_servicetask1)
|
|
5
|
|
CLAUSES:{ rbac_ac(user1_clerk,clerk,usertask1),rbac_ac(user1_clerk,clerk,usertask2),rbac_ac(user1_clerk,clerk,usertask5),rbac_ac(user1_clerk,clerk,usertask7),rbac_ac(user1_manager,manager,usertask3),rbac_ac(user1_manager,manager,usertask4),rbac_ac(user1_manager,manager,usertask6),rbac_ac(user1_supervisor,supervisor,usertask8),rbac_ac(user1_supervisor,supervisor,usertask9),rbac_ac(user2_clerk,clerk,usertask1),rbac_ac(user2_clerk,clerk,usertask2),rbac_ac(user2_clerk,clerk,usertask5),rbac_ac(user2_clerk,clerk,usertask7),rbac_ac(user2_manager,manager,usertask3),rbac_ac(user2_manager,manager,usertask4),rbac_ac(user2_manager,manager,usertask6),rbac_ac(user2_supervisor,supervisor,usertask8),rbac_ac(user2_supervisor,supervisor,usertask9) }
|
|
RULES: w_usertask2(fnat(n1,0,0),fnat(n3,0,0))
|
|
6
|
|
CLAUSES:{ rbac_ac(user1_clerk,clerk,usertask1),rbac_ac(user1_clerk,clerk,usertask2),rbac_ac(user1_clerk,clerk,usertask5),rbac_ac(user1_clerk,clerk,usertask7),rbac_ac(user1_manager,manager,usertask3),rbac_ac(user1_manager,manager,usertask4),rbac_ac(user1_manager,manager,usertask6),rbac_ac(user1_supervisor,supervisor,usertask8),rbac_ac(user1_supervisor,supervisor,usertask9),rbac_ac(user2_clerk,clerk,usertask1),rbac_ac(user2_clerk,clerk,usertask2),rbac_ac(user2_clerk,clerk,usertask5),rbac_ac(user2_clerk,clerk,usertask7),rbac_ac(user2_manager,manager,usertask3),rbac_ac(user2_manager,manager,usertask4),rbac_ac(user2_manager,manager,usertask6),rbac_ac(user2_supervisor,supervisor,usertask8),rbac_ac(user2_supervisor,supervisor,usertask9) }
|
|
RULES: authorizeTaskExecution(user1_clerk,clerk,usertask2,fnat(n3,0,0))
|
|
7
|
|
CLAUSES:{ rbac_ac(user1_clerk,clerk,usertask1),rbac_ac(user1_clerk,clerk,usertask2),rbac_ac(user1_clerk,clerk,usertask5),rbac_ac(user1_clerk,clerk,usertask7),rbac_ac(user1_manager,manager,usertask3),rbac_ac(user1_manager,manager,usertask4),rbac_ac(user1_manager,manager,usertask6),rbac_ac(user1_supervisor,supervisor,usertask8),rbac_ac(user1_supervisor,supervisor,usertask9),rbac_ac(user2_clerk,clerk,usertask1),rbac_ac(user2_clerk,clerk,usertask2),rbac_ac(user2_clerk,clerk,usertask5),rbac_ac(user2_clerk,clerk,usertask7),rbac_ac(user2_manager,manager,usertask3),rbac_ac(user2_manager,manager,usertask4),rbac_ac(user2_manager,manager,usertask6),rbac_ac(user2_supervisor,supervisor,usertask8),rbac_ac(user2_supervisor,supervisor,usertask9) }
|
|
RULES: h_taskExecution(user1_clerk,clerk,usertask2,fnat(n3,0,0),in_usertask2,out_usertask2)
|
|
8
|
|
CLAUSES:{ rbac_ac(user1_clerk,clerk,usertask1),rbac_ac(user1_clerk,clerk,usertask2),rbac_ac(user1_clerk,clerk,usertask5),rbac_ac(user1_clerk,clerk,usertask7),rbac_ac(user1_manager,manager,usertask3),rbac_ac(user1_manager,manager,usertask4),rbac_ac(user1_manager,manager,usertask6),rbac_ac(user1_supervisor,supervisor,usertask8),rbac_ac(user1_supervisor,supervisor,usertask9),rbac_ac(user2_clerk,clerk,usertask1),rbac_ac(user2_clerk,clerk,usertask2),rbac_ac(user2_clerk,clerk,usertask5),rbac_ac(user2_clerk,clerk,usertask7),rbac_ac(user2_manager,manager,usertask3),rbac_ac(user2_manager,manager,usertask4),rbac_ac(user2_manager,manager,usertask6),rbac_ac(user2_supervisor,supervisor,usertask8),rbac_ac(user2_supervisor,supervisor,usertask9) }
|
|
RULES: w_servicetask2(fnat(n3,0,0),fnat(n5,0,0))
|
|
9
|
|
CLAUSES:{ rbac_ac(user1_clerk,clerk,usertask1),rbac_ac(user1_clerk,clerk,usertask2),rbac_ac(user1_clerk,clerk,usertask5),rbac_ac(user1_clerk,clerk,usertask7),rbac_ac(user1_manager,manager,usertask3),rbac_ac(user1_manager,manager,usertask4),rbac_ac(user1_manager,manager,usertask6),rbac_ac(user1_supervisor,supervisor,usertask8),rbac_ac(user1_supervisor,supervisor,usertask9),rbac_ac(user2_clerk,clerk,usertask1),rbac_ac(user2_clerk,clerk,usertask2),rbac_ac(user2_clerk,clerk,usertask5),rbac_ac(user2_clerk,clerk,usertask7),rbac_ac(user2_manager,manager,usertask3),rbac_ac(user2_manager,manager,usertask4),rbac_ac(user2_manager,manager,usertask6),rbac_ac(user2_supervisor,supervisor,usertask8),rbac_ac(user2_supervisor,supervisor,usertask9) }
|
|
RULES: atask_execution(servicetask2,fnat(n5,0,0),in_servicetask2,out_servicetask2)
|
|
10
|
|
CLAUSES:{ rbac_ac(user1_clerk,clerk,usertask1),rbac_ac(user1_clerk,clerk,usertask2),rbac_ac(user1_clerk,clerk,usertask5),rbac_ac(user1_clerk,clerk,usertask7),rbac_ac(user1_manager,manager,usertask3),rbac_ac(user1_manager,manager,usertask4),rbac_ac(user1_manager,manager,usertask6),rbac_ac(user1_supervisor,supervisor,usertask8),rbac_ac(user1_supervisor,supervisor,usertask9),rbac_ac(user2_clerk,clerk,usertask1),rbac_ac(user2_clerk,clerk,usertask2),rbac_ac(user2_clerk,clerk,usertask5),rbac_ac(user2_clerk,clerk,usertask7),rbac_ac(user2_manager,manager,usertask3),rbac_ac(user2_manager,manager,usertask4),rbac_ac(user2_manager,manager,usertask6),rbac_ac(user2_supervisor,supervisor,usertask8),rbac_ac(user2_supervisor,supervisor,usertask9) }
|
|
RULES: w_usertask3(fnat(n5,0,0),fnat(n7,0,0))
|
|
11
|
|
CLAUSES:{ rbac_ac(user1_clerk,clerk,usertask1),rbac_ac(user1_clerk,clerk,usertask2),rbac_ac(user1_clerk,clerk,usertask5),rbac_ac(user1_clerk,clerk,usertask7),rbac_ac(user1_manager,manager,usertask3),rbac_ac(user1_manager,manager,usertask4),rbac_ac(user1_manager,manager,usertask6),rbac_ac(user1_supervisor,supervisor,usertask8),rbac_ac(user1_supervisor,supervisor,usertask9),rbac_ac(user2_clerk,clerk,usertask1),rbac_ac(user2_clerk,clerk,usertask2),rbac_ac(user2_clerk,clerk,usertask5),rbac_ac(user2_clerk,clerk,usertask7),rbac_ac(user2_manager,manager,usertask3),rbac_ac(user2_manager,manager,usertask4),rbac_ac(user2_manager,manager,usertask6),rbac_ac(user2_supervisor,supervisor,usertask8),rbac_ac(user2_supervisor,supervisor,usertask9) }
|
|
RULES: authorizeTaskExecution(user1_manager,manager,usertask3,fnat(n7,0,0))
|
|
12
|
|
CLAUSES:{ rbac_ac(user1_clerk,clerk,usertask1),rbac_ac(user1_clerk,clerk,usertask2),rbac_ac(user1_clerk,clerk,usertask5),rbac_ac(user1_clerk,clerk,usertask7),rbac_ac(user1_manager,manager,usertask3),rbac_ac(user1_manager,manager,usertask4),rbac_ac(user1_manager,manager,usertask6),rbac_ac(user1_supervisor,supervisor,usertask8),rbac_ac(user1_supervisor,supervisor,usertask9),rbac_ac(user2_clerk,clerk,usertask1),rbac_ac(user2_clerk,clerk,usertask2),rbac_ac(user2_clerk,clerk,usertask5),rbac_ac(user2_clerk,clerk,usertask7),rbac_ac(user2_manager,manager,usertask3),rbac_ac(user2_manager,manager,usertask4),rbac_ac(user2_manager,manager,usertask6),rbac_ac(user2_supervisor,supervisor,usertask8),rbac_ac(user2_supervisor,supervisor,usertask9) }
|
|
RULES: h_taskExecution(user1_manager,manager,usertask3,fnat(n7,0,0),in_usertask3,out_usertask3)
|
|
13
|
|
CLAUSES:{ rbac_ac(user1_clerk,clerk,usertask1),rbac_ac(user1_clerk,clerk,usertask2),rbac_ac(user1_clerk,clerk,usertask5),rbac_ac(user1_clerk,clerk,usertask7),rbac_ac(user1_manager,manager,usertask3),rbac_ac(user1_manager,manager,usertask4),rbac_ac(user1_manager,manager,usertask6),rbac_ac(user1_supervisor,supervisor,usertask8),rbac_ac(user1_supervisor,supervisor,usertask9),rbac_ac(user2_clerk,clerk,usertask1),rbac_ac(user2_clerk,clerk,usertask2),rbac_ac(user2_clerk,clerk,usertask5),rbac_ac(user2_clerk,clerk,usertask7),rbac_ac(user2_manager,manager,usertask3),rbac_ac(user2_manager,manager,usertask4),rbac_ac(user2_manager,manager,usertask6),rbac_ac(user2_supervisor,supervisor,usertask8),rbac_ac(user2_supervisor,supervisor,usertask9) }
|
|
RULES: w_usertask4(fnat(n7,0,0),fnat(n9,0,0))
|
|
14
|
|
CLAUSES:{ rbac_ac(user1_clerk,clerk,usertask1),rbac_ac(user1_clerk,clerk,usertask2),rbac_ac(user1_clerk,clerk,usertask5),rbac_ac(user1_clerk,clerk,usertask7),rbac_ac(user1_manager,manager,usertask3),rbac_ac(user1_manager,manager,usertask4),rbac_ac(user1_manager,manager,usertask6),rbac_ac(user1_supervisor,supervisor,usertask8),rbac_ac(user1_supervisor,supervisor,usertask9),rbac_ac(user2_clerk,clerk,usertask1),rbac_ac(user2_clerk,clerk,usertask2),rbac_ac(user2_clerk,clerk,usertask5),rbac_ac(user2_clerk,clerk,usertask7),rbac_ac(user2_manager,manager,usertask3),rbac_ac(user2_manager,manager,usertask4),rbac_ac(user2_manager,manager,usertask6),rbac_ac(user2_supervisor,supervisor,usertask8),rbac_ac(user2_supervisor,supervisor,usertask9) }
|
|
RULES: authorizeTaskExecution(user1_manager,manager,usertask4,fnat(n9,0,0))
|
|
15
|
|
CLAUSES:{ rbac_ac(user1_clerk,clerk,usertask1),rbac_ac(user1_clerk,clerk,usertask2),rbac_ac(user1_clerk,clerk,usertask5),rbac_ac(user1_clerk,clerk,usertask7),rbac_ac(user1_manager,manager,usertask3),rbac_ac(user1_manager,manager,usertask4),rbac_ac(user1_manager,manager,usertask6),rbac_ac(user1_supervisor,supervisor,usertask8),rbac_ac(user1_supervisor,supervisor,usertask9),rbac_ac(user2_clerk,clerk,usertask1),rbac_ac(user2_clerk,clerk,usertask2),rbac_ac(user2_clerk,clerk,usertask5),rbac_ac(user2_clerk,clerk,usertask7),rbac_ac(user2_manager,manager,usertask3),rbac_ac(user2_manager,manager,usertask4),rbac_ac(user2_manager,manager,usertask6),rbac_ac(user2_supervisor,supervisor,usertask8),rbac_ac(user2_supervisor,supervisor,usertask9) }
|
|
RULES: h_taskExecution(user1_manager,manager,usertask4,fnat(n9,0,0),in_usertask4,out_usertask4)
|
|
16
|
|
CLAUSES:{ rbac_ac(user1_clerk,clerk,usertask1),rbac_ac(user1_clerk,clerk,usertask2),rbac_ac(user1_clerk,clerk,usertask5),rbac_ac(user1_clerk,clerk,usertask7),rbac_ac(user1_manager,manager,usertask3),rbac_ac(user1_manager,manager,usertask4),rbac_ac(user1_manager,manager,usertask6),rbac_ac(user1_supervisor,supervisor,usertask8),rbac_ac(user1_supervisor,supervisor,usertask9),rbac_ac(user2_clerk,clerk,usertask1),rbac_ac(user2_clerk,clerk,usertask2),rbac_ac(user2_clerk,clerk,usertask5),rbac_ac(user2_clerk,clerk,usertask7),rbac_ac(user2_manager,manager,usertask3),rbac_ac(user2_manager,manager,usertask4),rbac_ac(user2_manager,manager,usertask6),rbac_ac(user2_supervisor,supervisor,usertask8),rbac_ac(user2_supervisor,supervisor,usertask9) }
|
|
CLOSED_FINAL_STATE:
|
|
{ counter_w_servicetask1(s(0)),counter_w_servicetask2(s(0)),counter_w_servicetask3(0),counter_w_servicetask4(0),counter_w_servicetask5(0),counter_w_usertask1(s(0)),counter_w_usertask2(s(0)),counter_w_usertask3(s(0)),counter_w_usertask4(s(0)),counter_w_usertask5(0),counter_w_usertask6(0),counter_w_usertask7(0),counter_w_usertask8(0),counter_w_usertask9(0),done(task(usertask4,fnat(n9,0,0))),initial_state(init_1),aknows(user1_clerk,in_usertask1),aknows(user1_clerk,in_usertask2),aknows(user1_clerk,out_usertask1),aknows(user1_clerk,out_usertask2),aknows(user1_manager,in_usertask3),aknows(user1_manager,in_usertask4),aknows(user1_manager,out_usertask3),aknows(user1_manager,out_usertask4),executed(user1_clerk,task(usertask1,fnat(n0,0,0))),executed(user1_clerk,task(usertask2,fnat(n3,0,0))),executed(user1_manager,task(usertask3,fnat(n7,0,0))),executed(user1_manager,task(usertask4,fnat(n9,0,0))),poto(clerk,usertask1),poto(clerk,usertask2),poto(clerk,usertask5),poto(clerk,usertask7),poto(manager,usertask3),poto(manager,usertask4),poto(manager,usertask6),poto(supervisor,usertask8),poto(supervisor,usertask9),user_to_role(user1_clerk,clerk),user_to_role(user1_manager,manager),user_to_role(user1_supervisor,supervisor),user_to_role(user2_clerk,clerk),user_to_role(user2_manager,manager),user_to_role(user2_supervisor,supervisor),canExecute(user1_clerk,clerk,usertask1),canExecute(user1_clerk,clerk,usertask2),canExecute(user1_clerk,clerk,usertask5),canExecute(user1_clerk,clerk,usertask7),canExecute(user1_manager,manager,usertask3),canExecute(user1_manager,manager,usertask4),canExecute(user1_manager,manager,usertask6),canExecute(user1_supervisor,supervisor,usertask8),canExecute(user1_supervisor,supervisor,usertask9),canExecute(user2_clerk,clerk,usertask1),canExecute(user2_clerk,clerk,usertask2),canExecute(user2_clerk,clerk,usertask5),canExecute(user2_clerk,clerk,usertask7),canExecute(user2_manager,manager,usertask3),canExecute(user2_manager,manager,usertask4),canExecute(user2_manager,manager,usertask6),canExecute(user2_supervisor,supervisor,usertask8),canExecute(user2_supervisor,supervisor,usertask9),rbac_ac(user1_clerk,clerk,usertask1),rbac_ac(user1_clerk,clerk,usertask2),rbac_ac(user1_clerk,clerk,usertask5),rbac_ac(user1_clerk,clerk,usertask7),rbac_ac(user1_manager,manager,usertask3),rbac_ac(user1_manager,manager,usertask4),rbac_ac(user1_manager,manager,usertask6),rbac_ac(user1_supervisor,supervisor,usertask8),rbac_ac(user1_supervisor,supervisor,usertask9),rbac_ac(user2_clerk,clerk,usertask1),rbac_ac(user2_clerk,clerk,usertask2),rbac_ac(user2_clerk,clerk,usertask5),rbac_ac(user2_clerk,clerk,usertask7),rbac_ac(user2_manager,manager,usertask3),rbac_ac(user2_manager,manager,usertask4),rbac_ac(user2_manager,manager,usertask6),rbac_ac(user2_supervisor,supervisor,usertask8),rbac_ac(user2_supervisor,supervisor,usertask9),sod_securitySod2_1(user1_manager,fnat(n9,0,0),fnat(n7,0,0)),task_to_data(servicetask1,in_servicetask1,out_servicetask1),task_to_data(servicetask2,in_servicetask2,out_servicetask2),task_to_data(servicetask3,in_servicetask3,out_servicetask3),task_to_data(servicetask4,in_servicetask4,out_servicetask4),task_to_data(servicetask5,in_servicetask5,out_servicetask5),task_to_data(usertask1,in_usertask1,out_usertask1),task_to_data(usertask2,in_usertask2,out_usertask2),task_to_data(usertask3,in_usertask3,out_usertask3),task_to_data(usertask4,in_usertask4,out_usertask4),task_to_data(usertask5,in_usertask5,out_usertask5),task_to_data(usertask6,in_usertask6,out_usertask6),task_to_data(usertask7,in_usertask7,out_usertask7),task_to_data(usertask8,in_usertask8,out_usertask8),task_to_data(usertask9,in_usertask9,out_usertask9) }
|