diff --git a/monkey/monkey_island/cc/ui/src/components/layouts/DisabledSidebarLayoutComponent.tsx b/monkey/monkey_island/cc/ui/src/components/layouts/DisabledSidebarLayoutComponent.tsx new file mode 100644 index 000000000..0210b129e --- /dev/null +++ b/monkey/monkey_island/cc/ui/src/components/layouts/DisabledSidebarLayoutComponent.tsx @@ -0,0 +1,15 @@ +import React from 'react' +import {Route} from 'react-router-dom' +import SideNavComponent from '../SideNavComponent.tsx' +import {Col, Row} from 'react-bootstrap'; + +export const DisabledSidebarLayoutComponent = ({component: Component, ...rest}) => ( + ( + + + + + + + )}/> +) diff --git a/monkey/monkey_island/cc/ui/src/components/pages/LandingPage.tsx b/monkey/monkey_island/cc/ui/src/components/pages/LandingPage.tsx new file mode 100644 index 000000000..d6f5136c1 --- /dev/null +++ b/monkey/monkey_island/cc/ui/src/components/pages/LandingPage.tsx @@ -0,0 +1,66 @@ +import React from 'react'; +import {Col, Row} from 'react-bootstrap'; +import {Link} from 'react-router-dom'; +import {FontAwesomeIcon} from '@fortawesome/react-fontawesome'; +import {faFileCode, faLightbulb} from '@fortawesome/free-solid-svg-icons'; +import '../../styles/pages/LandingPage.scss'; +import AuthComponent from '../AuthComponent'; + + +class LandingPageComponent extends AuthComponent { + constructor(props) { + super(props); + } + + render() { + return ( + +

Welcome to the Monkey Island Server

+
+ +
+
+ + ); + } +} + +function ScenarioButtons() { + return ( +
+

Choose a scenario:

+
+ +
+ +

Ransomware

+

Simulate ransomware infection in the network.

+ +
+
+ +

Custom

+

Fine tune the simulation to your needs.

+ +
+
+ +
+
+ ); +} + +function MonkeyInfo() { + return ( + <> +

What is Infection Monkey?

+ Infection Monkey is an open-source security tool for testing a data center's resiliency to perimeter + breaches and internal server infections. The Monkey uses various methods to propagate across a data center + and reports to this Monkey Island Command and Control server. + + ); +} + +export default LandingPageComponent; diff --git a/monkey/monkey_island/cc/ui/src/styles/pages/LandingPage.scss b/monkey/monkey_island/cc/ui/src/styles/pages/LandingPage.scss new file mode 100644 index 000000000..8cdf6ffe7 --- /dev/null +++ b/monkey/monkey_island/cc/ui/src/styles/pages/LandingPage.scss @@ -0,0 +1,12 @@ +.landing-page h1.page-title { + margin-bottom: 20px; +} + +.landing-page h2.scenario-choice-title { + margin-bottom: 20px; + margin-left: 12px; +} + +.landing-page .monkey-description-title { + margin-top: 30px; +}