파이핑에 의한 nmap 사용에 대해 문의 드립니다.

guliver의 이미지

포트번호 IP주소.. 순서로 된 파일 정보를 받아서, nmap 으로 해당 IP:포트를 체크하고자 하는데, 파이핑에 의한 실행이 잘 안됩니다.;; 목록파일인 new 라는 파일의 내용이 다음과 같습니다.

# cat new

80 192.168.111.100

기본적으로 사용했던 명령의 형태는 다음과 같은데, 에러가 납니다.

# cat new | xargs -t -i nmap -sV -p {}

nmap -sV -p 80 192.168.111.100

Starting Nmap 6.40 ( http://nmap.org ) at 2016-06-13 17:04 KST
Error #487: Your port specifications are illegal. Example of proper form: "-100,200-1024,T:3000-4000,U:60000-"
QUITTING!

헌데, 출력된 명령문을 마우스로 긁어서 프롬프트상에 붙여넣고 실행하면 잘됩니다. 결과가 잘 나옵니다.

# nmap -sV -p 80 192.168.111.100

Starting Nmap 6.40 ( http://nmap.org ) at 2016-06-13 16:54 KST
Nmap scan report for 192.168.111.100
Host is up (0.000069s latency).
PORT STATE SERVICE VERSION
80/tcp closed http

Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 1.17 seconds

해서, 읽은 파일내용에 보이지않는 무언가가 있나 싶어서, 앞뒤 공백, 캐리지리턴, 뉴라인 기호까지 있다면 제거하고 nmap 으로 보냈는데도, 마찬가지 에러가 나더군요.

# cat new | sed 's/^ *//; s/ *$//; s/\r//; s/\n//' | xargs -t -i nmap -sV -p {}

nmap -sV -p 80 192.168.111.100

Starting Nmap 6.40 ( http://nmap.org ) at 2016-06-13 17:18 KST
Error #487: Your port specifications are illegal. Example of proper form: "-100,200-1024,T:3000-4000,U:60000-"
QUITTING!

헌데, 동일 파일을 윈도우상에서 nmap으로 돌리면, 잘 됩니다. 여기선 파이핑은 아니고 for /f 문을 이용한거지만요.

Z:\>for /f "usebackq tokens=1,2" %A in (`type new`) do nmap -sV -p %A %B

Z:\>nmap -sV -p 80 192.168.111.100

Starting Nmap 7.12 ( https://nmap.org ) at 2016-06-13 17:23 ´eCN¹I±¹ C¥AØ
½A
Nmap scan report for 192.168.111.100
Host is up (0.00s latency).
..중략..
Nmap done: 1 IP address (1 host up) scanned in 2.70 seconds

리눅스에서 제가 사용한 명령문에 어떤부분이 문제일까요? xargs 사용에 문제점이 있었을까요? 조언 좀 부탁드리겠습니다. 감사합니다.

bushi의 이미지

nmap -sV -p "80 192.168.111.100" 처럼 실행되기 때문에 그렇습니다.

cat new | xargs -t nmap -sV -p 

cat new | while read port addr; do nmap -sV -p $port $addr; done
guliver의 이미지

아, 그런 점이 있었군요. -i 옵션이 파이핑 된 결과를 한꺼번에 보내느라 큰따옴표 처리를 하나 보군요. 조언 감사합니다.

guliver의 이미지

문제점을 알려주셔서, 덕분에 해결책을 찾았습니다. 감사합니다 ^^

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.