diff --git a/agent_based/cisco_vpn_tunnel.py b/agent_based/cisco_vpn_tunnel.py
index 856187ca12be7facfbdda5c279a34ae68a9eb96e..1f8bc1ce68b005dea349f11bf69ff31cbab47255 100644
--- a/agent_based/cisco_vpn_tunnel.py
+++ b/agent_based/cisco_vpn_tunnel.py
@@ -19,6 +19,7 @@
 # 2022-01-19: added workaround for not matching IKE_OID_end and cipSecTunIkeTunnelIndexfor not matching
 #             IKE_OID_end and cipSecTunIkeTunnelIndex, try to match IPSec nad IKE sa by remote address
 # 2022-04-01: changed IPSec SA count output to check levels
+# 2022-12-17: checked input values for isdigit()
 
 # snmpwalk sample
 #
@@ -68,14 +69,8 @@ class IpsecSa:
 
 @dataclass
 class IkeSa:
-    # local_type: int
-    # local_value: str
     local_addr: str
-    # local_name: str
-    # remote_type: int
-    # remote_value: str
     remote_addr: str
-    # remote_name: str
     active_time: int
     in_octets: int
     in_pkts: int
@@ -156,7 +151,7 @@ def parse_cisco_vpn_tunnel(string_table: List[StringTable]) -> Dict[str, IkeSa]:
 
     # summarize IPSec SAs, ASSUMPTION: except for counters all SA attributes are identical per IKE index
     for ike_tunnel_index, ike_tunnel_alive, tun_remote_addr, active_time, hc_in_octets, in_pkts, in_drop_pkts, \
-        hc_out_octets, out_pkts, out_drop_pkts in ipsec_tunnel_entry:
+            hc_out_octets, out_pkts, out_drop_pkts in ipsec_tunnel_entry:
 
         if ike_tunnel_index.isdigit():
             ipsec_sa = ipsec_sa_summary.setdefault(
@@ -164,13 +159,13 @@ def parse_cisco_vpn_tunnel(string_table: List[StringTable]) -> Dict[str, IkeSa]:
                 IpsecSa(0, 0, 0, 0, 0, 0, 0, 0, 0, tun_remote_addr)
             )
             ipsec_sa.sa_count += 1
-            ipsec_sa.hc_in_octets += int(hc_in_octets)
-            ipsec_sa.in_pkts += int(in_pkts)
-            ipsec_sa.in_drop_pkts += int(in_drop_pkts)
-            ipsec_sa.hc_out_octets += int(hc_out_octets)
-            ipsec_sa.out_pkts += int(out_pkts)
-            ipsec_sa.out_drop_pkts += int(out_drop_pkts)
-            if int(active_time) // 100 > ipsec_sa.active_time:
+            ipsec_sa.hc_in_octets += int(hc_in_octets) if hc_in_octets.isdigit() else 0
+            ipsec_sa.in_pkts += int(in_pkts) if in_pkts.isdigit() else 0
+            ipsec_sa.in_drop_pkts += int(in_drop_pkts) if in_drop_pkts.isdigit() else 0
+            ipsec_sa.hc_out_octets += int(hc_out_octets) if hc_out_octets.isdigit() else 0
+            ipsec_sa.out_pkts += int(out_pkts) if out_pkts.isdigit() else 0
+            ipsec_sa.out_drop_pkts += int(out_drop_pkts) if out_drop_pkts.isdigit() else 0
+            if active_time.isdigit and (int(active_time) // 100 > ipsec_sa.active_time):
                 ipsec_sa.active_time = int(active_time) // 100
 
     # IKE SA
@@ -185,26 +180,21 @@ def parse_cisco_vpn_tunnel(string_table: List[StringTable]) -> Dict[str, IkeSa]:
                 remote_addr = remote_value
             if len(remote_addr.split('.')) == 4:
                 ike_sa = IkeSa(
-                    # local_type=int(local_type),
-                    # local_value=local_value,
                     local_addr=_cisco_vpn_tunnel_render_ipv4_address(local_addr),
-                    # local_name=local_name,
-                    # remote_type=int(remote_type),
-                    # remote_value=remote_value,
                     remote_addr=remote_addr,
-                    # remote_name=remote_name,
-                    active_time=int(active_time) // 100,
-                    in_octets=int(in_octets),
-                    in_pkts=int(in_pkts),
-                    in_drop_pkts=int(in_droppkts),
-                    out_octets=int(out_octets),
-                    out_pkts=int(out_pkts),
-                    out_drop_pkts=int(out_droppkts),
-                    status=int(status),
-                    nego_mode=int(nego_mode),
+                    active_time=int(active_time) // 100 if active_time.isdigit() else 0,
+                    in_octets=int(in_octets) if in_octets.isdigit() else 0,
+                    in_pkts=int(in_pkts) if in_pkts.isdigit() else 0,
+                    in_drop_pkts=int(in_droppkts) if in_droppkts.isdigit() else 0,
+                    out_octets=int(out_octets) if out_octets.isdigit() else 0,
+                    out_pkts=int(out_pkts) if out_pkts.isdigit() else 0,
+                    out_drop_pkts=int(out_droppkts) if out_droppkts.isdigit() else 0,
+                    status=int(status) if status.isdigit() else 0,
+                    nego_mode=int(nego_mode) if nego_mode.isdigit() else 0,
                     # if/else is workaround for not matching IKE_OID_end and cipSecTunIkeTunnelIndex
                     # try to match IPSec sa by remote address
-                    ipsec_summary=ipsec_sa_summary.get(index) if ipsec_sa_summary.get(index) is not None else _get_ipsec_sa_by_remote_address(save_remote_addr, ipsec_sa_summary)
+                    ipsec_summary=ipsec_sa_summary.get(index) if ipsec_sa_summary.get(
+                        index) is not None else _get_ipsec_sa_by_remote_address(save_remote_addr, ipsec_sa_summary)
                 )
                 vpntunnel.update({remote_addr: ike_sa})
 
@@ -416,7 +406,8 @@ register.check_plugin(
     check_default_parameters={
         'state': 3,  # default state for tunnel not found
         'missing_ipsec_sa_state': 1,
-        'tunnels': [],  # list of tunnel specific not found states ('<ip-address>', '<alias>', <not_found_state>, <no_ipsec_sa>)
+        'tunnels': [],  # list of tunnel specific not found states
+                        # ('<ip-address>', '<alias>', <not_found_state>, <no_ipsec_sa>)
     },
     check_ruleset_name='cisco_vpn_tunnel',
 )
diff --git a/cisco_vpn_tunnel.mkp b/cisco_vpn_tunnel.mkp
index c2791813b414eee4ce3a879373facdb3fb64b616..48af5d5949ccf1ac6f93fd815336c313d73be923 100644
Binary files a/cisco_vpn_tunnel.mkp and b/cisco_vpn_tunnel.mkp differ
diff --git a/packages/cisco_vpn_tunnel b/packages/cisco_vpn_tunnel
index 7c6ea78435abf2567e040183cba6af9cbd05ec86..87606471cde29577bd829fd4470c4a5c05ced18b 100644
--- a/packages/cisco_vpn_tunnel
+++ b/packages/cisco_vpn_tunnel
@@ -11,7 +11,7 @@
  'name': 'cisco_vpn_tunnel',
  'num_files': 3,
  'title': 'Monitor Cisco VPN Tunnel',
- 'version': '20220401.v0.3a',
+ 'version': '20221217.v0.3b',
  'version.min_required': '2.0.0',
  'version.packaged': '2021.09.20',
  'version.usable_until': None}
\ No newline at end of file