---
name: "rasc"
section: "1"
platform: "linux"
package: "radare-common"
version: "1:1.5.2-2"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/rasc"
---

# rasc(1)

Radare Shellcode helper utility

## NAME

**rasc** – Radare Shellcode helper utility

## SYNOPSIS

**rasc** \[-cCxXtLV\] \[-A N\] \[-C N\] \[-E N\] \[-N N\] \[-a addr@off\] \[-s hexpair\] \[-i name\] \[-S file\] \[-l port\]

## DESCRIPTION

rasc implements the most common practices to generate shellcodes with paddings with 0x41's ('A'), nops, breakpoints or enumerations (00 01 02 03 ..).

rasc can serve a syscall proxy at a specified port with -l \[port\]

There's an hardcoded database of common used shellcodes that can be listed with -L. Use -i to specify which want you want to use.

The output can be raw or in hexpairs (-x) or C array (-c).

Use -X to inline execute the specified. (useful for testing)

To specify the

- **-A\|-C\|-E\|-N** *count*

  Specify the number of 'A's, breakpoints, enumerations and nops to be prefixed to the shellcode.

- **-a** *addr@off*

  Set the return address at a specified offset inside the resulting shellcode

- **-s** *'hexpair'*

  Set the shellcode in hexpair format. For example (-s '01 02 03')

- **-l** *port*

  Listen a syscall proxy server at a specified port.

- **-L**

  List all hardcoded shellcodes

- **-c**

  Show output in C array format

- **-x**

  Show output in hexpairs format

- **-X**

  Execute resulting shellcode

- **-t**

  Performs some tests on the current platform

- **-h**

  Show usage help message.

## ENVIRONMENT

Some shellcodes can be modified using the environment variables CMD, HOST and PORT. See -L for more information.

## SEE ALSO

[radiff(1)](/radiff/1.md), hasher(1), [radare(1)](/radare/1.md), [radarerc(5)](/radarerc/5.md), [rabin(1)](/rabin/1.md), [rfile(1)](/rfile/1.md), [xc(1)](/xc/1.md), [rsc(1)](/rsc/1.md), [rasm(1)](/rasm/1.md), [bug(1)](/bug/1.md), [xrefs(1)](/xrefs/1.md)

## AUTHORS

pancake \<pancake@youterm.com\>
