Ich möchte folgendes erreichen: der User muss sich authentifizieren, um eine Auswahl in der Datenbank zu hinterlegen.
Das Problem dabei ist, dass das zwar funktioniert wenn der User mittels "80" einsteigt jedoch kann er durch direkte Anwahl des Menüpunktes als Rufnummer (1, 2, usw.) die Auswahl treffen OHNE sich zuvor authentifizieren zu müssen.
Soweit ich verstanden habe, muss ich die Extensions aber so wie die zu drückende Zifferntaste am Telefon benennen!!!
Wo liegt hier mein Denkfehler? Was muss ich tun um diese katastrophale Sicherheitslücke zu schließen?
Ich hoffe wirklich, dass ihr mir helfen könnt.
Greez,
Wolfhard
Das Problem dabei ist, dass das zwar funktioniert wenn der User mittels "80" einsteigt jedoch kann er durch direkte Anwahl des Menüpunktes als Rufnummer (1, 2, usw.) die Auswahl treffen OHNE sich zuvor authentifizieren zu müssen.
Soweit ich verstanden habe, muss ich die Extensions aber so wie die zu drückende Zifferntaste am Telefon benennen!!!
Wo liegt hier mein Denkfehler? Was muss ich tun um diese katastrophale Sicherheitslücke zu schließen?
Code:
[admin_functions]
; 1 = Sipgate
; 2 = Nikotel
; 3 = PBX Network
exten => 80,1,Answer
exten => 80,2,Authenticate(4258)
exten => 80,3,Playback(censec_pin-number-accepted)
exten => 80,4,Wait(1)
exten => 80,5,Background(censec_providerselection)
exten => 1,1,Set(DB(Provider/SelectedProvider)=sipgate)
exten => 1,2,Playback(censec_providerselected)
exten => 1,3,Hangup
exten => 2,1,Set(DB(Provider/SelectedProvider)=nikotel)
exten => 2,2,Playback(censec_providerselected)
exten => 2,3,Hangup
exten => 3,1,Set(DB(Provider/SelectedProvider)=pbxnetwork)
exten => 3,2,Playback(censec_providerselected)
exten => 3,3,Hangup
exten => 4,1,Set(DB(Provider/SelectedProvider)=none)
exten => 4,2,Playback(censec_providerselected)
exten => 4,3,Hangup
exten => 5,1,Playback(censec_selectioninvalid)
exten => 5,2,Goto(admin_functions,80,1)
exten => 6,1,Playback(censec_selectioninvalid)
exten => 6,2,Goto(admin_functions,80,1)
exten => 7,1,Playback(censec_selectioninvalid)
exten => 7,2,Goto(admin_functions,80,1)
exten => 8,1,Playback(censec_selectioninvalid)
exten => 8,2,Goto(admin_functions,80,1)
exten => 9,1,Playback(censec_selectioninvalid)
exten => 9,2,Goto(admin_functions,80,1)
exten => i,1,Playback(censec_selectioninvalid)
exten => i,2,Goto(admin_functions,80,1)
exten => t,1,Playback(vm-goodbye)
exten => t,2,Hangup
Ich hoffe wirklich, dass ihr mir helfen könnt.
Greez,
Wolfhard