@@ -141,6 +141,8 @@ func Exploit() {
141
141
142
142
}
143
143
144
+ var isicmp bool
145
+
144
146
func incIP (ip net.IP ) {
145
147
for j := len (ip ) - 1 ; j >= 0 ; j -- {
146
148
ip [j ]++
@@ -156,12 +158,19 @@ func GetUser(){
156
158
//fmt.Println(err)
157
159
return
158
160
}
159
- fmt .Println ("User: " + u .Username )
161
+ if isicmp {
162
+ color .Magenta ("User: " + u .Username + " IsAdmin" )
163
+ } else {
164
+ fmt .Println ("User: " + u .Username + " IsUser" )
165
+ }
166
+
160
167
}
161
168
var debugLog * log.Logger
162
169
func main () {
163
- color .Green ("LadonGo 3.0 by k8gege" )
170
+ color .Green ("LadonGo 3.1 by k8gege" )
164
171
fmt .Println ("Arch: " + runtime .GOARCH + " OS: " + runtime .GOOS )
172
+ if icmp .IcmpOK ("localhost" ) {
173
+ isicmp = true }
165
174
GetUser ()
166
175
fmt .Println ("Pid: " ,os .Getpid (),"Process:" ,path .Base (os .Args [0 ]))
167
176
ParLen := len (os .Args )
@@ -292,9 +301,11 @@ func main() {
292
301
}
293
302
for i := ips ;i <= ipe ;i ++ {
294
303
ip := fmt .Sprintf ("%s.%d" ,IPC ,i )
304
+
295
305
fmt .Println ("\n C_Segment: " + ip )
296
306
fmt .Println ("=============================================" )
297
307
CScan (ScanType ,ip )
308
+
298
309
}
299
310
} else if strings .Contains (Target , "/" ) {
300
311
if Target != "" {
@@ -319,6 +330,9 @@ func main() {
319
330
//log.Println("Finished")
320
331
fmt .Println (" Finished: " + time .Now ().Format ("2006-01-02 03:04:05" ))
321
332
}
333
+ func CEnd (){
334
+ fmt .Println ("CFinished: " + time .Now ().Format ("2006-01-02 03:04:05" ))
335
+ }
322
336
func End (){
323
337
fmt .Println (" Finished: " + time .Now ().Format ("2006-01-02 03:04:05" ))
324
338
os .Exit (0 )
@@ -339,6 +353,7 @@ func CScan(ScanType string,Target string){
339
353
}(ip )
340
354
}
341
355
wg .Wait ()
356
+ CEnd ()
342
357
}
343
358
func BScan (ScanType string ,Target string ){
344
359
ip := strings .Replace (Target , "/b" , "" , - 1 )
@@ -369,10 +384,29 @@ func LadonScan(ScanType string,Target string) {
369
384
icmp .Icmp (Target ,debugLog )
370
385
} else if ScanType == "SNMPSCAN" || ScanType == "SNMP" {
371
386
snmp .GetInfo (Target )
372
- } else if ScanType == "PORTSCAN" || ScanType == "SCANPORT" {
373
- port .ScanPort (Target )
374
- } else if ScanType == "TCPBANNER" {
375
- port .ScanPortBanner (Target )
387
+ } else if ScanType == "ONLINEPC" {
388
+ if isicmp {
389
+ icmp .Icmp (Target ,debugLog )
390
+ }else if ping .PingOK (Target ) {
391
+ ping .PingName (Target )
392
+ }
393
+ snmp .SnmpOK (Target )
394
+ } else if ScanType == "PORTSCAN" || ScanType == "SCANPORT" || ScanType == "TCPSCAN" {
395
+ if isicmp {
396
+ if icmp .IcmpOK (Target ) {
397
+ port .ScanPort (Target )
398
+ }
399
+ }else if ping .PingOK (Target ) {
400
+ port .ScanPort (Target )
401
+ }
402
+ } else if ScanType == "TCPBANNER" || ScanType == "PORTSCANBNNER" || ScanType == "SCANPORTBANNER" {
403
+ if isicmp {
404
+ if icmp .IcmpOK (Target ) {
405
+ port .ScanPortBanner (Target )
406
+ }
407
+ }else if ping .PingOK (Target ) {
408
+ port .ScanPortBanner (Target )
409
+ }
376
410
} else if ScanType == "HTTPBANNER" || ScanType == "WEBBANNER" {
377
411
http .HttpBanner (Target )
378
412
} else if ScanType == "HTTPTITLE" || ScanType == "WEBTITLE" {
@@ -396,7 +430,7 @@ func LadonScan(ScanType string,Target string) {
396
430
} else if ScanType == "MSSQLSCAN" {
397
431
mssql .MssqlScan (ScanType ,Target )
398
432
} else if ScanType == "ORACLESCAN" {
399
- oracle .OracleScan (ScanType ,Target )
433
+ // oracle.OracleScan(ScanType,Target)
400
434
} else if ScanType == "SQLPLUSSCAN" {
401
435
oracle .SqlPlusScan (ScanType ,Target )
402
436
} else if ScanType == "WINRMSCAN" {
0 commit comments