Marli-Probe.ps1
function Marli-Probe{ Param ( [parameter(Mandatory=$true)] [String]$IP, [parameter(Mandatory=$false)] [int]$MaxPort ) [int]$ScanPort = 1 If ([int]$MaxPort -eq '') {[int]$MaxPort = 1024} #>------------------------------------------------------- $ErrorActionPreference = 'SilentlyContinue' #>------------------------------------------------------- function Clean_Status () { $position=$Host.ui.RawUI.CursorPosition $position.x = 28 $position.y = 6 $Host.ui.RawUI.CursorPosition=$position Write-Host " " -NoNewline $position=$Host.ui.RawUI.CursorPosition $position.x = 28 $position.y = 7 $Host.ui.RawUI.CursorPosition=$position Write-Host " " -NoNewline $position=$Host.ui.RawUI.CursorPosition $position.x = 28 $position.y = 8 $Host.ui.RawUI.CursorPosition=$position Write-Host " " -NoNewline $position=$Host.ui.RawUI.CursorPosition $position.x = 28 $position.y = 9 $Host.ui.RawUI.CursorPosition=$position Write-Host " " -NoNewline $position=$Host.ui.RawUI.CursorPosition $position.x = 28 $position.y = 10 $Host.ui.RawUI.CursorPosition=$position Write-Host " " -NoNewline $position=$Host.ui.RawUI.CursorPosition $position.x = 28 $position.y = 11 $Host.ui.RawUI.CursorPosition=$position Write-Host " " -NoNewline $position=$Host.ui.RawUI.CursorPosition $position.x = 28 $position.y = 12 $Host.ui.RawUI.CursorPosition=$position Write-Host " " -NoNewline $position=$Host.ui.RawUI.CursorPosition $position.x = 0 $position.y = 15 $Host.ui.RawUI.CursorPosition=$position } Function Portping { Param($address, $port, $timeout=100) try { $socket=New-Object System.Net.Sockets.TcpClient $result=$socket.BeginConnect($address, $port, $NULL, $NULL) if (!$result.AsyncWaitHandle.WaitOne($timeout, $False)) { throw [System.Exception]::new('Connection Timeout') } $socket.EndConnect($result) $socket.Connected } catch{$socket = $false} finally { $socket.Close() } } function Fix_Ping ([int]$xposi,[int]$yposi,[string]$address,[int]$Port) { Clean_Status $position=$Host.ui.RawUI.CursorPosition $position.x = 0 $position.y = $yposi $Host.ui.RawUI.CursorPosition=$position Write-Host "->" -ForegroundColor Yellow $Test = [bool](Portping -address $address -port $Port) $position=$Host.ui.RawUI.CursorPosition $position.x = 0 $position.y = $yposi $Host.ui.RawUI.CursorPosition=$position If ($Test -eq $true) {Write-Host "open" -ForegroundColor Green} else {Write-Host "close" -ForegroundColor Red} } function Flex_Ping ([int]$xposi, [int]$yposi,[string]$address,[int]$Port) { $position1=$Host.ui.RawUI.CursorPosition $position1.x = 0 $position1.y = 14 $Host.ui.RawUI.CursorPosition=$position1 Write-Host "Deepscan: Port $Port " $Test = [bool](Portping -address $address -port $Port) If ($Test -eq $true) { $val = $val + 1 $position2=$Host.ui.RawUI.CursorPosition $position2.x = $xposi $position2.y = $yposi + $val $Host.ui.RawUI.CursorPosition=$position2 Write-Host $val } } Clear-Host Write-Host "" Write-Host "Probe for " -NoNewline Write-Host $IP -ForegroundColor Yellow Write-Host "--------------------------------" Write-Host Write-Host "Firewall Port" Write-Host "_______________________" Write-Host " = HTTP-PORT(80)" Write-Host " = HTTPS-PORT(443)" Write-Host " = FTP-PORT(20)" Write-Host " = FTP-PORT(21)" Write-Host " = SSH-PORT(22)" Write-Host " = TELNET(23)" Write-Host " = SMTP-PORT(25)" Write-Host "________________________" Write-Host "Deepscan: " Write-Host "Firewall Port" Write-Host "________________________" Write-Host "" Fix_Ping 0 6 $IP 80 Fix_Ping 0 7 $IP 443 Fix_Ping 0 8 $IP 20 Fix_Ping 0 9 $IP 21 Fix_Ping 0 10 $IP 22 Fix_Ping 0 11 $IP 23 Fix_Ping 0 12 $IP 25 Write-Host "" Clean_Status While (!($ScanPort -eq $MaxPort)) { $position1=$Host.ui.RawUI.CursorPosition $position1.x = 0 $position1.y = 14 $Host.ui.RawUI.CursorPosition=$position1 Write-Host "Deepscan: Port $ScanPort " $Test = [bool](Portping -address $IP -port $ScanPort) If ($Test -eq $true) { [int]$val += 1 $position2=$Host.ui.RawUI.CursorPosition $position2.x = 0 $position2.y = 16 + $val $Host.ui.RawUI.CursorPosition=$position2 Write-Host "open" -NoNewline -ForegroundColor Green Write-Host " = PORT $ScanPort" } $ScanPort += 1 } Read-Host } |