{"guid":"ef93ad8e-5953-5844-9a7f-e4573b2ebf34","title":"Taking Over The World with Scratch","subtitle":null,"slug":"emf2018-74-taking-over-the-world-with-scratch","link":"https://c3voc.de","description":"Scratch is a popular language/IDE for teaching children to code. It is possible to extend the offline version of Scratch 2 with a Python module that communicates with Scratch via a web service.\n\nI have extended Scratch to control Midi instruments and Arduino projects, including controlling Lego Power Functions motors, having reverse engineered the infrared protocol they use.\n\nIn addition, and perhaps most scarily, I have implemented a TCP/IP sockets extension with which I have exploited vulnerabilities in network services and gained remote code execution.  It is literally possible to create 0day exploits with Scratch!\n\nI will discuss the framework and the format of the extensions, and I will demonstrate my projects, including hacking a target virtual machine, controlling Lego motors and making noises with a Midi instrument.\n\nScratch is a popular language/IDE for teaching children to code. It is possible to extend the offline version of Scratch 2 with a Python module that communicates with Scratch via a web service.\n\nI have extended Scratch to control Midi instruments and Arduino projects, including controlling Lego Power Functions motors, having reverse engineered the infrared protocol they use.\n\nIn addition, and perhaps most scarily, I have implemented a TCP/IP sockets extension with which I have exploited vulnerabilities in network services and gained remote code execution.  It is literally possible to create 0day exploits with Scratch!\n\nI will discuss the framework and the format of the extensions, and I will demonstrate my projects, including hacking a target virtual machine, controlling Lego motors and making noises with a Midi instrument.","original_language":"eng","persons":["Kev Sheldrake"],"tags":["emf2018","74"],"view_count":122,"promoted":false,"date":"2018-08-31T00:00:00.000+02:00","release_date":"2018-09-01T02:00:00.000+02:00","updated_at":"2026-02-06T13:00:07.952+01:00","length":2060,"duration":2060,"thumb_url":"https://static.media.ccc.de/media/events/emf/2018/74-hd.jpg","poster_url":"https://static.media.ccc.de/media/events/emf/2018/74-hd_preview.jpg","timeline_url":"https://static.media.ccc.de/media/events/emf/2018/ef93ad8e-5953-5844-9a7f-e4573b2ebf34-timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/events/emf/2018/ef93ad8e-5953-5844-9a7f-e4573b2ebf34-thumbnails.vtt","frontend_link":"https://media.ccc.de/v/emf2018-74-taking-over-the-world-with-scratch","url":"https://api.media.ccc.de/public/events/ef93ad8e-5953-5844-9a7f-e4573b2ebf34","conference_title":"Electromagnetic Field 2018","conference_url":"https://api.media.ccc.de/public/conferences/emf2018","related":[{"event_id":5734,"event_guid":"adde2800-ffa1-44c4-aafd-c4928ee5378d","weight":3},{"event_id":5840,"event_guid":"5765a692-a730-5704-aa41-9b14d40a55fe","weight":2},{"event_id":5844,"event_guid":"ebaad1c6-9a60-510a-807b-976a18541fcc","weight":3},{"event_id":5848,"event_guid":"a633920f-8aed-5526-948a-271c48183e5a","weight":2},{"event_id":5849,"event_guid":"b0f350ba-1276-55b2-9984-ee0e4446f007","weight":2},{"event_id":5850,"event_guid":"75ce0be1-9882-5bba-b1d7-8a20cdeac639","weight":3},{"event_id":5855,"event_guid":"727edb06-a061-5f61-9ae8-52d12e0720e4","weight":2},{"event_id":5856,"event_guid":"036fef78-09c1-5bbf-a65e-629180d47b0a","weight":5},{"event_id":5860,"event_guid":"e7844f9a-f9e7-511f-b51d-26c526d2acb0","weight":2},{"event_id":5865,"event_guid":"73ef432f-7207-55e7-8bf3-7835fde6aee8","weight":3},{"event_id":5867,"event_guid":"1b2fc0eb-7735-5586-8efb-2295d4cfd35b","weight":2},{"event_id":5868,"event_guid":"ab743be1-d7f8-5179-ad97-bba9a0deaa7e","weight":3},{"event_id":5872,"event_guid":"312d822c-3eb4-5f9d-8be4-6b86eb7bc133","weight":2},{"event_id":5879,"event_guid":"64276164-587f-5cf9-b366-ae746128014a","weight":3},{"event_id":5886,"event_guid":"02a6d145-4bec-5664-9861-387e528808cb","weight":2},{"event_id":5887,"event_guid":"2c8fac7f-38b0-57df-99b1-2dd60d97ddc2","weight":2},{"event_id":5893,"event_guid":"b44cbf53-1b97-51c5-945a-c3a75dbdf2e2","weight":2},{"event_id":5895,"event_guid":"bcd13b3a-d337-5457-9d4c-7fd04bf749b2","weight":3},{"event_id":5898,"event_guid":"75d5f015-a01c-5ca9-a009-313702fa88ba","weight":2},{"event_id":5899,"event_guid":"07eea888-4a04-5493-b688-bf6ad2da8aa4","weight":2},{"event_id":5914,"event_guid":"bd7d06d7-8889-51fa-854e-021d23b79183","weight":2},{"event_id":5915,"event_guid":"912b0562-9d53-5815-b992-5af4a1253faa","weight":2},{"event_id":5916,"event_guid":"df8636ef-3857-5336-b31f-b2c248426ca4","weight":2},{"event_id":5919,"event_guid":"ed2b73e8-6e79-5ae5-a1ac-a3b48ff639a2","weight":2},{"event_id":5920,"event_guid":"14a2abe5-b0cf-5e8b-96af-9184a3b71237","weight":2},{"event_id":5923,"event_guid":"5adafa17-0546-5d92-8702-162a4558284b","weight":2},{"event_id":5933,"event_guid":"b4aa787a-3ee8-528d-8a55-064e0858a5a6","weight":2},{"event_id":5934,"event_guid":"8769d3af-5098-515b-9197-24f80251a13a","weight":3},{"event_id":5941,"event_guid":"bf3544cc-06a2-5ca2-8a0d-b1d2155092eb","weight":2}],"recordings":[{"size":163,"length":2060,"mime_type":"video/mp4","language":"eng","filename":"emf2018-74-eng-Taking_Over_The_World_with_Scratch_hd.mp4","state":"new","folder":"h264-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2018-09-01T15:17:09.561+02:00","recording_url":"https://cdn.media.ccc.de/events/emf/2018/h264-hd/emf2018-74-eng-Taking_Over_The_World_with_Scratch_hd.mp4","url":"https://api.media.ccc.de/public/recordings/27644","event_url":"https://api.media.ccc.de/public/events/ef93ad8e-5953-5844-9a7f-e4573b2ebf34","conference_url":"https://api.media.ccc.de/public/conferences/emf2018"},{"size":31,"length":2060,"mime_type":"audio/mpeg","language":"eng","filename":"emf2018-74-eng-Taking_Over_The_World_with_Scratch_mp3.mp3","state":"new","folder":"mp3","high_quality":false,"width":0,"height":0,"updated_at":"2018-09-01T15:39:02.751+02:00","recording_url":"https://cdn.media.ccc.de/events/emf/2018/mp3/emf2018-74-eng-Taking_Over_The_World_with_Scratch_mp3.mp3","url":"https://api.media.ccc.de/public/recordings/27674","event_url":"https://api.media.ccc.de/public/events/ef93ad8e-5953-5844-9a7f-e4573b2ebf34","conference_url":"https://api.media.ccc.de/public/conferences/emf2018"},{"size":25,"length":2060,"mime_type":"audio/opus","language":"eng","filename":"emf2018-74-eng-Taking_Over_The_World_with_Scratch_opus.opus","state":"new","folder":"opus","high_quality":false,"width":0,"height":0,"updated_at":"2018-09-01T15:39:37.652+02:00","recording_url":"https://cdn.media.ccc.de/events/emf/2018/opus/emf2018-74-eng-Taking_Over_The_World_with_Scratch_opus.opus","url":"https://api.media.ccc.de/public/recordings/27675","event_url":"https://api.media.ccc.de/public/events/ef93ad8e-5953-5844-9a7f-e4573b2ebf34","conference_url":"https://api.media.ccc.de/public/conferences/emf2018"},{"size":64,"length":2060,"mime_type":"video/mp4","language":"eng","filename":"emf2018-74-eng-Taking_Over_The_World_with_Scratch_sd.mp4","state":"new","folder":"h264-sd","high_quality":false,"width":720,"height":576,"updated_at":"2018-09-01T15:43:02.219+02:00","recording_url":"https://cdn.media.ccc.de/events/emf/2018/h264-sd/emf2018-74-eng-Taking_Over_The_World_with_Scratch_sd.mp4","url":"https://api.media.ccc.de/public/recordings/27692","event_url":"https://api.media.ccc.de/public/events/ef93ad8e-5953-5844-9a7f-e4573b2ebf34","conference_url":"https://api.media.ccc.de/public/conferences/emf2018"},{"size":277,"length":2060,"mime_type":"video/webm","language":"eng","filename":"emf2018-74-eng-Taking_Over_The_World_with_Scratch_webm-hd.webm","state":"new","folder":"webm-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2018-09-01T15:47:55.598+02:00","recording_url":"https://cdn.media.ccc.de/events/emf/2018/webm-hd/emf2018-74-eng-Taking_Over_The_World_with_Scratch_webm-hd.webm","url":"https://api.media.ccc.de/public/recordings/27713","event_url":"https://api.media.ccc.de/public/events/ef93ad8e-5953-5844-9a7f-e4573b2ebf34","conference_url":"https://api.media.ccc.de/public/conferences/emf2018"},{"size":97,"length":2060,"mime_type":"video/webm","language":"eng","filename":"emf2018-74-eng-Taking_Over_The_World_with_Scratch_webm-sd.webm","state":"new","folder":"webm-sd","high_quality":false,"width":720,"height":576,"updated_at":"2018-09-01T15:48:03.487+02:00","recording_url":"https://cdn.media.ccc.de/events/emf/2018/webm-sd/emf2018-74-eng-Taking_Over_The_World_with_Scratch_webm-sd.webm","url":"https://api.media.ccc.de/public/recordings/27714","event_url":"https://api.media.ccc.de/public/events/ef93ad8e-5953-5844-9a7f-e4573b2ebf34","conference_url":"https://api.media.ccc.de/public/conferences/emf2018"}]}