diff --git a/checkov/cloudformation/runner.py b/checkov/cloudformation/runner.py
index db33c11eb..83e2f2432 100644
--- a/checkov/cloudformation/runner.py
+++ b/checkov/cloudformation/runner.py
@@ -1,6 +1,7 @@
 import logging
 import operator
 import os
+import re
 from functools import reduce
 
 from checkov.cloudformation.checks.resource.registry import resource_registry
@@ -11,6 +12,7 @@ from checkov.common.runners.base_runner import BaseRunner
 from checkov.runner_filter import RunnerFilter
 
 CF_POSSIBLE_ENDINGS = [".yml", ".yaml", ".json", ".template"]
+COMMENT_REGEX = re.compile(r'(checkov:skip=) *([A-Z_\d]+)(:[^\n]+)?')
 
 
 class Runner(BaseRunner):
@@ -81,10 +83,6 @@ class Runner(BaseRunner):
                     continue
                 resource_id = f"{resource['Type']}.{resource_name}"
 
-                ## TODO - Evaluate skipped_checks
-                skipped_checks = {}
-
-                results = resource_registry.scan(cf_file, {resource_name: resource}, skipped_checks,runner_filter)
                 # TODO refactor into context parsing
                 find_lines_result_list = list(find_lines(resource, '__startline__'))
                 if len(find_lines_result_list) >= 1:
@@ -98,6 +96,18 @@ class Runner(BaseRunner):
                     # TODO - Variable Eval Message!
                     variable_evaluations = {}
 
+                    skipped_checks = []
+                    for line in entity_code_lines:
+                        skip_search = re.search(COMMENT_REGEX, str(line))
+                        if skip_search:
+                            skipped_checks.append(
+                                {
+                                    'id': skip_search.group(2),
+                                    'suppress_comment': skip_search.group(3)[1:] if skip_search.group(3) else "No comment provided"
+                                }
+                            )
+
+                    results = resource_registry.scan(cf_file, {resource_name: resource}, skipped_checks, runner_filter)
                     for check, check_result in results.items():
                         ### TODO - Need to get entity_code_lines and entity_lines_range
                         record = Record(check_id=check.id, check_name=check.name, check_result=check_result,

Supression skip comments for CloudFormation templates
Suppression does not appear to work for CloudFormation templates. For example with the following group, adding skip commitfor `CKV_AWS_24` to not get a warning from SSH port open.  

```
  #checkov:skip=CKV_AWS_24:
  SecurityGroup:
    Type: AWS::EC2::SecurityGroup
    Properties:
      GroupDescription: Folding@home spot instance security group
      VpcId: !Ref VpcId
      SecurityGroupIngress:
        - IpProtocol: tcp
          FromPort: 22
          ToPort: 22
          CidrIp: !Ref SSHLocation
      SecurityGroupEgress:
        - IpProtocol: udp
          FromPort: 53
          ToPort: 53
          CidrIp: 0.0.0.0/0
        - IpProtocol: udp
          FromPort: 123
          ToPort: 123
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 80
          ToPort: 80
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 8080
          ToPort: 8080
          CidrIp: 0.0.0.0/0
        - IpProtocol: tcp
          FromPort: 443
          ToPort: 443
          CidrIp: 0.0.0.0/0
```
Please implement supression for CloudFormation templates also.
diff --git a/tests/cloudformation/parser/skip.yaml b/tests/cloudformation/parser/skip.yaml
new file mode 100644
index 000000000..4922c7927
--- /dev/null
+++ b/tests/cloudformation/parser/skip.yaml
@@ -0,0 +1,11 @@
+Resources:
+  MyDB:
+    Type: 'AWS::RDS::DBInstance'
+    # Test case for check skip via comment
+    # checkov:skip=CKV_AWS_16:Ensure all data stored in the RDS is securely encrypted at rest
+    Properties:
+      DBName: 'mydb'
+      DBInstanceClass: 'db.t3.micro'
+      Engine: 'mysql'
+      MasterUsername: 'master'
+      MasterUserPassword: 'password'
diff --git a/tests/cloudformation/parser/test_cfn_yaml.py b/tests/cloudformation/parser/test_cfn_yaml.py
new file mode 100644
index 000000000..ad56651e3
--- /dev/null
+++ b/tests/cloudformation/parser/test_cfn_yaml.py
@@ -0,0 +1,23 @@
+import os
+import unittest
+
+from checkov.cloudformation.runner import Runner
+from checkov.runner_filter import RunnerFilter
+
+
+class TestCfnYaml(unittest.TestCase):
+
+    def test_skip_parsing(self):
+        current_dir = os.path.dirname(os.path.realpath(__file__))
+
+        test_files = f'{current_dir}/skip.yaml'
+        report = Runner().run(None, files=[test_files], runner_filter=RunnerFilter())
+        summary = report.get_summary()
+
+        self.assertEqual(summary['passed'], 1)
+        self.assertEqual(summary['failed'], 0)
+        self.assertEqual(summary['skipped'], 1)
+        self.assertEqual(summary['parsing_errors'], 0)
+
+if __name__ == '__main__':
+    unittest.main()

pip install -e .
parse_log_pytest
pytest
pytest
apt-get update apt-get install -y git
3.7
pytest --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning
attrs @ file:///croot/attrs_1668696182826/work
boto3==1.12.43
botocore==1.15.49
certifi @ file:///croot/certifi_1671487769961/work/certifi
chardet==3.0.4
-e git+https://github.com/bridgecrewio/checkov.git@63a441563ff271fd675bb05c77e1620dbfd865a9#egg=checkov
colorama==0.4.3
docopt==0.6.2
docutils==0.15.2
dpath==1.5.0
flit_core @ file:///opt/conda/conda-bld/flit-core_1644941570762/work/source/flit_core
idna==2.8
importlib-metadata @ file:///tmp/build/80754af9/importlib-metadata_1648562407465/work
iniconfig @ file:///home/linux1/recipes/ci/iniconfig_1610983019677/work
jmespath==0.10.0
junit-xml==1.8
lark-parser==0.7.8
packaging @ file:///croot/packaging_1671697413597/work
pluggy @ file:///tmp/build/80754af9/pluggy_1648042572264/work
py @ file:///opt/conda/conda-bld/py_1644396412707/work
pytest==7.1.2
python-dateutil==2.9.0.post0
python-hcl2==0.2.5
PyYAML==5.2
requests==2.22.0
s3transfer==0.3.7
six==1.13.0
tabulate==0.8.6
termcolor==1.1.0
tomli @ file:///opt/conda/conda-bld/tomli_1657175507142/work
typing_extensions @ file:///croot/typing_extensions_1669924550328/work
urllib3==1.25.7
zipp @ file:///croot/zipp_1672387121353/work

name: checkov
channels:
  - defaults
  - https://repo.anaconda.com/pkgs/main
  - https://repo.anaconda.com/pkgs/r
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - attrs=22.1.0=py37h06a4308_0
  - ca-certificates=2025.2.25=h06a4308_0
  - certifi=2022.12.7=py37h06a4308_0
  - flit-core=3.6.0=pyhd3eb1b0_0
  - importlib-metadata=4.11.3=py37h06a4308_0
  - importlib_metadata=4.11.3=hd3eb1b0_0
  - iniconfig=1.1.1=pyhd3eb1b0_0
  - ld_impl_linux-64=2.40=h12ee557_0
  - libffi=3.4.4=h6a678d5_1
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - ncurses=6.4=h6a678d5_0
  - openssl=1.1.1w=h7f8727e_0
  - packaging=22.0=py37h06a4308_0
  - pip=22.3.1=py37h06a4308_0
  - pluggy=1.0.0=py37h06a4308_1
  - py=1.11.0=pyhd3eb1b0_0
  - pytest=7.1.2=py37h06a4308_0
  - python=3.7.16=h7a1cb2a_0
  - readline=8.2=h5eee18b_0
  - setuptools=65.6.3=py37h06a4308_0
  - sqlite=3.45.3=h5eee18b_0
  - tk=8.6.14=h39e8969_0
  - tomli=2.0.1=py37h06a4308_0
  - typing_extensions=4.4.0=py37h06a4308_0
  - wheel=0.38.4=py37h06a4308_0
  - xz=5.6.4=h5eee18b_1
  - zipp=3.11.0=py37h06a4308_0
  - zlib=1.2.13=h5eee18b_1
  - pip:
      - boto3==1.12.43
      - botocore==1.15.49
      - chardet==3.0.4
      - colorama==0.4.3
      - docopt==0.6.2
      - docutils==0.15.2
      - dpath==1.5.0
      - idna==2.8
      - jmespath==0.10.0
      - junit-xml==1.8
      - lark-parser==0.7.8
      - python-dateutil==2.9.0.post0
      - python-hcl2==0.2.5
      - pyyaml==5.2
      - requests==2.22.0
      - s3transfer==0.3.7
      - six==1.13.0
      - tabulate==0.8.6
      - termcolor==1.1.0
      - urllib3==1.25.7
prefix: /opt/conda/envs/checkov

tests/cloudformation/parser/test_cfn_yaml.py::TestCfnYaml::test_skip_parsing
checkov/cloudformation/runner.py
checkov/cloudformation/runner.py