A system for providing automated computer security compromise as a service, running within a cloud computing environment, the system comprising: a web server having a web front end running on the web server, wherein users (100, 101, 102) connect to the web server via the web front end, and wherein the web server has stored therein pentest definitions created by the users (100, 101, 102) through use of the Web front end; a command and control component which processes the pentest definitions, builds pentest task tickets and reporting task tickets, and monitors different portions of the system, wherein the portions of the system are selected from the group consisting of at least one penetration tester component (106, 107) and at least one report generator component (108, 109), wherein the command and control component interacts with the cloud computing environment to scale up or down the number of penetration tester components and the number of report generator components, and assigns the task tickets to the penetration tester components and to the report generator components (108, 109), at least one penetration tester component (106, 107) runs a penetration testing framework, the at least one penetration tester component (106, 107) being able to run penetration testing modules (108, 109) available inside the penetration testing framework as instructed by the pentest task tickets built by the command and control component, wherein the command and control component comprises a load monitor adapted to: monitor penetration tester and report generator components' (106, 107, 108, 109) load; and determine a need for the penetration tester and report generator components (106, 107, 108, 109); and wherein scaling (902, 903) the number of penetration tester and report generator components (106, 107, 108, 109) is performed according to the need for penetration tester and report generator components (106, 107, 108, 109) as determined by the load monitor; at least one report generator component (108, 109) generates reports, as pentest results, based on the reporting tasks tickets generated by the command and control service; and a central database for storing the pentest results wherein the pentest results are isolated by the central database for each front end user (100, 101, 102). a web server having a web front end running on the web server, wherein users (100, 101, 102) connect to the web server via the web front end, and wherein the web server has stored therein pentest definitions created by the users (100, 101, 102) through use of the Web front end; a command and control component which processes the pentest definitions, builds pentest task tickets and reporting task tickets, and monitors different portions of the system, wherein the portions of the system are selected from the group consisting of at least one penetration tester component (106, 107) and at least one report generator component (108, 109), wherein the command and control component interacts with the cloud computing environment to scale up or down the number of penetration tester components and the number of report generator components, and assigns the task tickets to the penetration tester components and to the report generator components (108, 109), at least one penetration tester component (106, 107) runs a penetration testing framework, the at least one penetration tester component (106, 107) being able to run penetration testing modules (108, 109) available inside the penetration testing framework as instructed by the pentest task tickets built by the command and control component, wherein the command and control component comprises a load monitor adapted to: monitor penetration tester and report generator components' (106, 107, 108, 109) load; and determine a need for the penetration tester and report generator components (106, 107, 108, 109); monitor penetration tester and report generator components' (106, 107, 108, 109) load; and determine a need for the penetration tester and report generator components (106, 107, 108, 109); and wherein scaling (902, 903) the number of penetration tester and report generator components (106, 107, 108, 109) is performed according to the need for penetration tester and report generator components (106, 107, 108, 109) as determined by the load monitor; at least one report generator component (108, 109) generates reports, as pentest results, based on the reporting tasks tickets generated by the command and control service; and a central database for storing the pentest results wherein the pentest results are isolated by the central database for each front end user (100, 101, 102).