
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <link rel="apple-touch-icon" sizes="180x180" href="assets/favicon/apple-touch-icon.png">
    <link rel="icon" type="image/png" sizes="32x32" href="assets/favicon/favicon-32x32.png">
    <link rel="icon" type="image/png" sizes="16x16" href="assets/favicon/favicon-16x16.png">

    <title>Identity Monitoring - Intelligence X</title>

    <link href="css/font-awesome.min.css" rel="stylesheet" type="text/css" />
    <link href="fonts/OpenSans.css" rel="stylesheet" type="text/css" />
    <link href="css/bootstrap.min.css" rel="stylesheet" />
    <link href="css/uniform.default.min.css" rel="stylesheet" type="text/css" />
    <link href="css/ark.css" rel="stylesheet" type="text/css" />

    <script src="js/jquery.min.js"></script>
    <script src="js/config.js"></script>
    <script>
        apiGet = function apiGet(url, parameters, success, error) {
            $.ajax({
                type: 'GET',
                url: API_URL + url + "?k=" + API_KEY + parameters,
                success: success,
                error: error
            });
        }

        apiPost = function apiPost(url, data, success, error) {
            $.ajax({
                type: 'POST',
                url: API_URL + url + "?k=" + API_KEY,
                data: data,
                success: success,
                error: error
            });
        }

        function sleep(ms) {
            return new Promise(resolve => setTimeout(resolve, ms));
        }

        $(document).on('click', '#btnSubmit1,#btnSubmit2', function(e) {
            e.preventDefault();
            var param1, value1;
            if (e.target.id == 'btnSubmit1') {
                param1 = "&selector="
                value1 = $('#searchField1').val()
            } else if (e.target.id == 'btnSubmit2') {
                param1 = "&hash="
                value1 = $('#searchField2').val()
            }
            if (value1 == '') {
                return
            }

            $('#result1').html('Searching...');
            apiGet('selector/lookup', param1 + value1,
                function(p) {
                    $('#result1').html("Selector:  " + p.selector + "\nHash:      " + p.hash + "\nFound:     " + p.found);
                },
                function(error) {
                    $('#result1').html('An error has occured.');
                }
            );
        });

        var terminate;
        $(document).on('click', '#dataleak1,#dataleak2', function(e) {
            e.preventDefault();
            var param1, param2, value1;
            if (e.target.id == 'dataleak1') {
                param1 = "&selector="
                value1 = $('#searchField3').val()
            } else if (e.target.id == 'dataleak2') {
                param1 = "&hash="
                value1 = $('#searchField4').val()
            }
            if (value1 == '') {
                return
            }
            if (terminate != '') {
                param2 = "&terminate=" + terminate;
                terminate = '';
            }
            apiSearch('live/search/internal', param1 + value1 + "&limit=" + $('#limit').val() + "&bucket=" + $('#bucket').val() + param2 + "&skipinvalid=true&analyze=" + $("#analyzedata").is(":checked"), 'result2')
        });

        function apiOutputResult(text, outputHTML) {
            var resultE = document.getElementById(outputHTML);
            resultE.innerHTML += text;
        }

        function apiSearchResult(id, outputHTML) {
            apiGet('live/search/result', "&id=" + id,
                function(p) {
                    apiOutputResult(p.text, outputHTML);
                    if (p.status < 2) {
                        setTimeout(function() {
                            apiSearchResult(id, outputHTML);
                        }, 1000);
                    }
                },
                function(error) {
                    apiOutputResult('An error has occured.', outputHTML)
                }
            );
        }

        function apiSearch(api, params, outputHTML) {
            $('#' + outputHTML).html('Searching...\n');
            apiGet(api, params,
                function(p) {
                    if (p.status == 1) {
                        $('#' + outputHTML).html('The hash was not found.');
                        return
                    } else if (p.status == 2) {
                        $('#' + outputHTML).html('The selector is invalid.');
                        return
                    }
                    terminate = p.id;
                    apiSearchResult(p.id, outputHTML);
                },
                function(error) {
                    $('#' + outputHTML).html('An error has occured.');
                }
            );
        }
    </script>
</head>

<body class="cover fixed_header">

    <div class="wrapper">
        <!-- HEAD NAV -->
        <div class="navbar navbar-default navbar-static-top navbar-main" role="navigation">
            <div class="navbar-header">
                <a class="navbar-brand" href="index.html"><img src="img/IntelligenceX.svg" alt="Intelligence X" width="180"></a>
            </div>

        </div>
        <!-- END: HEAD NAV -->

        <div class="navbar navbar-default navbar-static-top navbar-top" role="navigation">
            <ul class="nav navbar-nav">
                <li class="active"><a href="index.html"><i class="fa fa-search fa-fw"></i>Search Data Leaks</a></li>
                <li><a href="export.html"><i class="fa fa-download fa-fw"></i>Export Leaked Accounts</a></li>
                <li><a href="changelog.html"><i class="fa fa-book fa-fw"></i>Changelog</a></li>
                <li><a href="Leaks API.pdf"><i class="fa fa-download fa-fw"></i>API documentation</a></li>
                <li><a href="status.html"><i class="fa fa-code fa-fw"></i>API status</a></li>
                <li><a href="faq.html"><i class="fa fa-question-circle fa-fw"></i>FAQ</a></li>
            </ul>
        </div>

        <!-- BODY -->
        <div class="body">

            <section class="content">

                <!--<ol class="breadcrumb">
                    <li class="active"><i class="fa fa-home fa-fw"></i> Home</li>
                </ol>-->

                <div class="header">
                    <div class="col-md-12">
                        <h3 class="header-title">Search Data Leaks</h3>

                        <p class="header-info">Find data leaks. Internal tool for quality testing purposes. It lists the lines where selectors appear, analyzes them and outputs the result.
                        </p>
                    </div>
                </div>

                <!-- CONTENT -->
                <div class="main-content" style="padding-bottom: 5px;">

                    <div class="row">
                        <form>
                            <fieldset style="border: 1px solid silver;margin: 0 2px;padding: .35em .625em;">
                                <legend style="margin:0;border:0;font-size: 13px;width: auto;">Enter selector to look up</legend>
                                <input type="search" id="searchField3" placeholder="Email, domain, SSN or CC" size="50">
                                <button class="btn btn-primary " type="submit" id="dataleak1">Search</button><br>
                                <!--<input type="search" id="searchField4" placeholder="MD5 hash" size="50">
                                <button class="btn btn-primary " type="submit" id="dataleak2">Search</button><br> -->Max amount of records per bucket: <input type="number" id="limit" min="0" value="1000"><br> Bucket: <input type="search" id="bucket" placeholder="Optional bucket filter" size="50" value=""><br>
                                <div class="checkbox">
                                    <label>
                                            <input type="checkbox" id="analyzedata"> Analyze records and output results
                                        </label>
                                </div>
                                <p>Supported selectors: Email address, domain name, social security number, credit card number</p>
                            </fieldset>
                        </form>

                        <div>
                            <pre id="result2" style="border-radius: 0;">Result will appear here.</pre>
                        </div>

                        <hr>&copy; 2020 - 2024 Intelligence X


                    </div>

                </div>
                <!-- END: CONTENT -->
            </section>
        </div>
        <!-- END: BODY -->
    </div>

    <script src="js/jquery.uniform.min.js"></script>
    <script src="js/bootstrap.min.js"></script>
    <script src="js/jquery.dataTables.min.js"></script>
    <script src="js/ark.min.js"></script>
    <script src="js/jquery.autosize.min.js"></script>

</body>

</html>