DC619/DC858 Mainframe Environment/Lab

Related tags

MiscellaneousDC619
Overview

DC619 Training LPAR

DEFCON MAINFRAME

The file DC619 - Mainframe Overflows Hands On.pdf contains the labs and walks through how to perform them.

Use docker

You can use docker instead of building from scratch: https://hub.docker.com/r/mainframed767/mvsce_dc619

Building from scratch

  • Download the most recent version of MVSCE from https://github.com/MVS-sysgen/sysgen/releases
  • Launch MVSCE
  • Install Review Front end:
    • Logon to MVSCE
    • At the TSO ready prompt: RX MVP INSTALL REVIEW
  • Submit the job logon_screen.JCL: cat logon_screen.JCL|ncat --send-only -w1 127.0.0.1 3505
  • Submit the job motd.jcl: cat motd.jcl|ncat --send-only -w1 127.0.0.1 3505
  • Submit the job terminal.jcl: cat terminal.jcl|ncat --send-only -w1 127.0.0.1 3505
  • Submit the job make_staging.jcl: cat make_staging.jcl|ncat --send-only -w1 127.0.0.1 3505
  • Using RFE in TSO edit SYS1.VTAMLST(ATCCON00) and replace LCL400 with DC619T
  • Edit SYS1.PARMLIB members:
    • IEASYS00 and change MAXUSERS to 32
    • IKJTSO00 and change USERMAX to 32
  • Install https://github.com/mvslovers/rdrprep on your Linux box
  • Clone https://github.com/mvslovers/jcc to this folder
  • Compile hello.c:
    • ./jcc/jcc -I./jcc/include -o hello.c
    • ./jcc/prelink -s ./jcc/objs hello.load hello.obj
  • Copy hello.load to users: cp hello.load users
  • Run usersjcl.py: python3 usersjcl.py
  • Convert each job in the users folder with rdrprep and submit them one by one:
    • for i in *.jcl; do echo $i;rdrprep $i;cat reader.jcl|ncat --send-only -w1 172.17.0.3 3506; read; done
    • You can check the output of MVSCE printers/prt00e.txt to see each job completed
  • Shutdown MVS/CE
  • Re-IPL MVS/CE and enjoy your lab environment

Files

  • hello.c vulnerable C program from https://github.com/jake-mainframe/GETSPLOIT
  • EBCDIC files LGBT400, LOC400 and WTO400
  • Dockerfile used to build docker image from the contents for ./dasd: https://github.com/jake-mainframe/GETSPLOIT
  • logon_screen.ans/logon_screen.JCL: ANSI/JCL to replace the NETSOL logon screen
  • motd.jcl replaces the TSO logon clist
  • terminal.jcl adds 32 new terminal interfaces and updates VTAM config
  • usersjcl.py creates DC00.jcl through DC29.jcl in the ./users folder
Owner
Soldier of FORTRAN
Mainframe hacker extraordinaire
Soldier of FORTRAN
Library for RadiaCode-101

RadiaCode Библиотека для работы с дозиметром RadiaCode-101, находится в разработке - API не стабилен и возможны изменения. Пример использования (backe

Maxim Andreev 56 Nov 29, 2022
Ontario-Covid-Screening - An automated Covid-19 School Screening Tool for Ontario

Ontario-Covid19-Screening An automated Covid-19 School Screening Tool for Ontari

Rayan K 0 Feb 20, 2022
A tool for generating skill map/tree like diagram

skillmap A tool for generating skill map/tree like diagram. What is a skill map/tree? Skill tree is a term used in video games, and it can be used for

Yue 98 Jan 07, 2023
This repository contains Python Projects for Beginners as well as for Intermediate Developers built by Contributors.

Python Projects {Open Source} Introduction The repository was built with a tree-like structure in mind, it contains collections of Python Projects. Mo

Gaurav Pandey 115 Apr 30, 2022
Yandex Media Browser

Браузер медиа для плагина Yandex Station Включайте музыку, плейлисты и радио на Яндекс.Станции из Home Assistant! Скриншот Корневой раздел: Библиотека

Alexander Ryazanov 35 Dec 19, 2022
Pequenos programas variados que estou praticando e implementando, leia o Read.me!

my-small-programs Pequenos programas variados que estou praticando e implementando! Arquivo: automacao Automacao de processos de rotina com código Pyt

Léia Rafaela 43 Nov 22, 2022
A Python package for searching journal publications and researchers

scholarpy A python package for searching journal publications and researchers Free software: MIT license Documentation: https://giswqs.github.io/schol

Qiusheng Wu 8 Mar 12, 2022
🥦 Send and receive nano with 2 simple functions

easy_nano Send and receive nano (without having to understand the nano protocol).

1 Feb 14, 2022
Exploring basic lambda calculus in Python

Lambda Exploring basic lambda calculus in Python. In this repo I have used the lambda function built into python to get a more intiutive feel of lambd

Bhardwaj Bhaskar 2 Nov 12, 2021
An unofficial python API for trading on the DeGiro platform, with the ability to get real time data and historical data.

DegiroAPI An unofficial API for the trading platform Degiro written in Python with the ability to get real time data and historical data for products.

Jorrick Sleijster 5 Dec 16, 2022
String Spy is a project aimed at improving MacOS defenses.

String Spy is a project aimed at improving MacOS defenses. It allows users to constantly monitor all running processes for user-defined strings, and if it detects a process with such a string it will

10 Dec 13, 2022
A python script that fetches the grades of a student from a WAEC result in pdf format.

About waec-result-analyzer A python script that fetches the grades of a student from a WAEC result in pdf format. Built for federal government college

Oshodi Kolapo 2 Dec 04, 2021
Pipenv-local-deps-repro - Reproduction of a local transitive dependency on pipenv

Reproduction of the pipenv bug with transitive local dependencies. Clone this re

Lucas Duailibe 2 Jan 11, 2022
Tool that adds githuh profile views to ur acc

Tool that adds githuh profile views to ur acc

Lamp 2 Nov 28, 2021
MiniJVM is simple java virtual machine written by python language, it can load class file from file system and run it.

MiniJVM MiniJVM是一款使用python编写的简易JVM,能够从本地加载class文件并且执行绝大多数指令。 支持的功能 1.从本地磁盘加载class并解析 2.支持绝大多数指令集的执行 3.支持虚拟机内存分区以及对象的创建 4.支持方法的调用和参数传递 5.支持静态代码块的初始化 不支

keguoyu 60 Apr 01, 2022
Pixelarticons - Pixel Art Icons made simple for Flutter, powered by pixelarticons and fontify

Pixelarticons - Pixel Art Icons made simple for Flutter, powered by pixelarticons and fontify

lask 16 Dec 12, 2022
Automatização completa do site https://blaze.com

PyBlaze Pyblaze possibilita o acesso a api do site blaze utilizando python, retornando os últimos resultados de crashs e doubles. Agora também é possí

Cleiton Leonel 24 Dec 30, 2022
Standard mutable string (character array) implementation for Python.

chararray A standard mutable character array implementation for Python.

Tushar Sadhwani 3 Dec 18, 2021
A powerful and user-friendly binary analysis platform!

angr angr is a platform-agnostic binary analysis framework. It is brought to you by the Computer Security Lab at UC Santa Barbara, SEFCOM at Arizona S

6.3k Jan 02, 2023
py2dis - A disassembly engine & library for Python

py2dis - A disassembly engine & library for Python. py2dis is a disassembly library for Python that does not use any modules/libraries other than colo

3 Feb 04, 2022