Sponsored Content
Top Forums Shell Programming and Scripting Help with sed to add delimiter to send HEX with netcat Post 302584577 by patx on Friday 23rd of December 2011 06:01:32 PM
Old 12-23-2011
Help with sed to add delimiter to send HEX with netcat

Hello,

I want to send tcpflow dump to a TCP port in HEX data, to send with netcat i need to convert to HEX and add \\x before each HEX bytes, to do this i use this line:
Code:
tcpflow -i [interface] -C dst port [port] | xxd -p | sed 's/../&\\\\x/g;s/ $//' | nc [host] [port]

the output on the listening end:
Code:
2e\\x2e\\x2e\\x2e\\x54\\x0d\\x22\\x2e\\x2e\\x24\\x52\\x2e\\x2e\\x21\\x2e\\x2e\\x2e\\x2e\\x2e\\x66\\x

The problem is that the \\x delimiter is not added for the first byte as shown above...

thankx for your help.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

help with sed to add delimiter and new field to each row

I have a file with millions of rows that I need to add a delimiter and a new field with a zero to the end of each row. (its too big to open and do a find and replace regex) I'm looking for the next line '\n' and need to replace it with a Unit Separator (hex \037) 0 \n. I've tried the... (2 Replies)
Discussion started by: kmac
2 Replies

2. Programming

After converting the hexstr to Hex and storing the Hex in a char*

Hi All, My main intension of is to convert the Hexstring stored in a char* into hex and then prefixing it with "0x" and suffix it with ',' This has to be done for all the hexstring char* is NULL. Store the result prefixed with "0x" and suffixed with ',' in another char* and pass it to... (1 Reply)
Discussion started by: rvan
1 Replies

3. Shell Programming and Scripting

convert hex to binary and send to variable

Folks, can anyone help with a script to convert hex to binary digits, and break the 32 bit binary into packs of 4 and send them to 8 different variables.Any help is sincerely appreciated. Thanks venu Its in korn shell...... (24 Replies)
Discussion started by: venu
24 Replies

4. Programming

What is the difference between ios::hex and std::hex?

Hi, Is there really a difference between these two, std::hex and ios::hex?? I stumbled upon reading a line, "std::ios::hex is a bitmask (8 on gcc) and works with setf(). std::hex is the operator". Is this true? Thanks (0 Replies)
Discussion started by: royalibrahim
0 Replies

5. Shell Programming and Scripting

how to get data from hex file using SED or AWK based on pattern sign

I have a binary (hex) file I need to parse to get some data which are encoded this way: .* b4 . . . 01 12 .* af .* 83 L1 x1 x2 xL 84 L2 y1 y2 yL By another words there is a stream of hexadecimal bytes (in my example separated by space for better readability). I need to get value stored in... (3 Replies)
Discussion started by: sameucho
3 Replies

6. Shell Programming and Scripting

SED on cygwin not working with Hex or Octal

Hi, I have downloaded a web page that I need to cleanup before passing to xmlstarlet. Using UltraEdit's HEX utility part of my download is as follows: 3C 2F 61 3E 0A 09 0A 09 09 3C 2F 61 3E which in ASCII is </a> </a> I need to locate this string and replace it with just... (7 Replies)
Discussion started by: dazhoop
7 Replies

7. Shell Programming and Scripting

How add 0 in hex conversion?

Hi, Got the below code in this forum, for i in `cat test`; do printf "%16s\n" $(echo "ibase=10;obase=16;$i" | bc) done Understand, this will not give output with '0'. Need help to get the output with '0'. Regards, Siva (2 Replies)
Discussion started by: ksgnathan
2 Replies

8. Shell Programming and Scripting

How to replace with "sed" some hex values by other hex values?

Assume I have a file \usr\home\\somedir\myfile123.txt and I want to replace all occurencies of the two (concatenated) hex values x'AD' x'A0' bytwo other (concatenated) hex values x'20' x'6E' How can I achieve this with the gnu sed tool? Additional question: Is there a way to let sed show... (1 Reply)
Discussion started by: pstein
1 Replies

9. UNIX for Advanced & Expert Users

Replace hex values using sed command

File lalo.txt contains: Á I need to replace Á by A using sed command. od -x lalo.txt 0000000 c10a 0000002 sed -e 's/\xc1\x0a/A/g' lalo.txt > lalo2.txt Also tried: sed -e 's/\xc3\x81/A/g' lalo.txt > lalo2.txt Output file lalo2.txt still has Á Unix version: SunOS 5.11 ... (9 Replies)
Discussion started by: mrreds
9 Replies

10. UNIX for Beginners Questions & Answers

Using sed to split hex string

Hi, I'm looking to split the following hex string into rows of four elements. I've tried the following but it doesn't seem to work. How can I tell sed to match based on a pair of number(s) and letter(s), and add a newline every 4 pairs? In addition, I need to add another newline after every... (5 Replies)
Discussion started by: sand1234
5 Replies
NC(1)							    BSD General Commands Manual 						     NC(1)

NAME
nc -- arbitrary TCP and UDP connections and listens SYNOPSIS
nc [-e command] [-g intermediates] [-G hopcount] [-i interval] [-lnrtuvz] [-o filename] [-p source port] [-s ip address] [-w timeout] [hostname] [port[s...]] DESCRIPTION
The nc (or netcat) utility is used for just about anything under the sun involving TCP or UDP. It can open TCP connections, send UDP pack- ets, listen on arbitrary TCP and UDP ports, do port scanning, and source routing. Unlike telnet(1), nc scripts nicely, and separates error messages onto standard error instead of sending them to standard output, as telnet(1) does with some. Destination ports can be single integers, names as listed in services(5), or ranges. Ranges are in the form nn-mm, and several separate ports and/or ranges may be specified on the command line. Common uses include: o simple TCP proxies o shell-script based HTTP clients and servers o network daemon testing o source routing based connectivity testing o and much, much more The options are as follows: -e command Execute the specified command, using data from the network for stdin, and sending stdout and stderr to the network. This option is only present if nc was compiled with the GAPING_SECURITY_HOLE compile time option, since it allows users to make arbitrary programs available to anyone on the network. -g intermediate-host Specifies a hop along a loose source routed path. Can be used more than once to build a chain of hop points. -G pointer Positions the "hop counter" within the list of machines in the path of a source routed packet. Must be a multiple of 4. -i seconds Specifies a delay time interval between lines of text sent and received. Also causes a delay time between connections to multiple ports. -l Is used to specify that nc should listen for an incoming connection, rather than initiate a connection to a remote host. Any host- name/IP address and port arguments restrict the source of inbound connections to only that address and source port. -n Do not do DNS lookups on any of the specified addresses or hostnames, or names of port numbers from /etc/services. -o filename Create a hexadecimal log of data transferred in the specified file. Each line begins with ``<'' or ``>''. ``<'' means "from the net" and ``>'' means "to the net". -p port Specifies the source port nc should use, subject to privilege restrictions and availability. -r Specifies that source and/or destination ports should be chosen semi-randomly instead of sequentially within a range or in the order that the system assigns. -s hostname/ip-address Specifies the IP of the interface which is used to send the packets. On some platforms, this can be used for UDP spoofing by using ifconfig(8) to bring up a dummy interface with the desired source IP address. -t Causes nc to send RFC854 DON'T and WON'T responses to RFC854 DO and WILL requests. This makes it possible to use nc to script telnet sessions. The presence of this option can be enabled or disabled as a compile-time option. -u Use UDP instead of TCP. On most platforms, nc will behave as if a connection is established until it receives an ICMP packet indi- cating that there is no program listening to what it sends. -v Verbose. Cause nc to display connection information. Using -v more than once will cause nc to become even more verbose. -w timeout Specifies the number of seconds nc should wait before deciding that an attempt to establish a connection is hopeless. Also used to specify how long to wait for more network data after standard input closes. -z Specifies that nc should just scan for listening daemons, without sending any data to them. Diagnostic messages about refused con- nections will not be displayed unless -v is specified twice. EXAMPLES
nc Wait for the user to type what would normally be command-line arguments in at stdin. nc example.host 42 Open a TCP connection to port 42 of example.host. If the connection fails, do not display any error messages, but simply exit. nc -p 31337 example.host 42 Open a TCP connection to port 42 of example.host, and use port 31337 as the source port. nc -w 5 example.host 42 Open a TCP connection to port 42 of example.host, and time out after five seconds while attempting to connect. nc -u example.host 53 Send any data from stdin to UDP port 53 of example.host, and display any data returned. nc -s 10.1.2.3 example.host 42 Open a TCP connection to port 42 of example.host using 10.1.2.3 as the IP for the local end of the connection. nc -v example.host 42 Open a TCP connection to port 42 of example.host, displaying some diagnostic messages on stderr. nc -v -v example.host 42 Open a TCP connection to port 42 of example.host, displaying all diagnostic messages on stderr. nc -v -z example.host 20-30 Attempt to open TCP connections to ports 20 through 30 of example.host, and report which ones nc was able to connect to. nc -v -u -z -w 3 example.host 20-30 Send UDP packets to ports 20-30 of example.host, and report which ones did not respond with an ICMP packet after three seconds. nc -l -p 3000 Listen on TCP port 3000, and once there is a connection, send stdin to the remote host, and send data from the remote host to stdout. echo foobar | nc example.host 1000 Connect to port 1000 of example.host, send the string "foobar" followed by a newline, and move data from port 1000 of example.host to std- out until example.host closes the connection. SEE ALSO
cat(1), telnet(1) The netcat README. AUTHOR
*Hobbit* [hobbit@avian.org] BSD
August 1, 1996 BSD
All times are GMT -4. The time now is 09:32 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy