{
    "componentChunkName": "component---src-templates-issues-tsx",
    "path": "/issues/215",
    "result": {"data":{"issuesJson":{"id":"75022916-52b7-527c-ba5b-f83a71390586","title":"madneal/gshark: 根据关键字等规则，从 GitHub、GitLab 等扫描代码泄露、敏感信息泄露等安全问题","number":215,"bodyHTML":"<div align=\"center\" dir=\"auto\">\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https://camo.githubusercontent.com/a15b413168923d02e21292705ceaf86b92675f98e250c5c896a02ba7504a6eae/68747470733a2f2f63646e2e6a7364656c6976722e6e65742f67682f657279616a662f7475406d61696e2f696d672f696d6167655f32303234303432305f3231343430382e676966\"><img src=\"https://camo.githubusercontent.com/a15b413168923d02e21292705ceaf86b92675f98e250c5c896a02ba7504a6eae/68747470733a2f2f63646e2e6a7364656c6976722e6e65742f67682f657279616a662f7475406d61696e2f696d672f696d6167655f32303234303432305f3231343430382e676966\" width=\"100%\" height=\"3\" data-animated-image=\"\" data-canonical-src=\"https://cdn.jsdelivr.net/gh/eryajf/tu@main/img/image_20240420_214408.gif\" style=\"max-width: 100%; height: auto; max-height: 3px;\"></a><br><br></p>\n<markdown-accessiblity-table><table role=\"table\">\n<thead>\n<tr>\n<th align=\"right\">Repos</th>\n<th align=\"left\"><a href=\"https://github.com/madneal/gshark\">madneal/gshark</a></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td align=\"right\"><strong>Views</strong></td>\n<td align=\"left\"><a href=\"https://github.com/opsre/awesome-ops\"><img src=\"https://camo.githubusercontent.com/7dd965c522f877209d54dd651eb5a0a5adf8012807a97fc61e52c0fdad947dc5/68747470733a2f2f76696577732e77686174696c656172656e65642e746f6461792f76696577732f6769746875622f6d61646e65616c2f67736861726b2e737667\" alt=\"views\" data-canonical-src=\"https://views.whatilearened.today/views/github/madneal/gshark.svg\" style=\"max-width: 100%;\"></a></td>\n</tr>\n<tr>\n<td align=\"right\"><strong>Stars</strong></td>\n<td align=\"left\"><a href=\"https://github.com/opsre/awesome-ops\"><img src=\"https://camo.githubusercontent.com/206c5c42a68f8f993844da809b06fe7efafc2e9b741c6a325d91d825e5280118/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f6d61646e65616c2f67736861726b3f636f6c6f723d663266303864266c6f676f3d556e64657274616c65266c6f676f436f6c6f723d656234363330\" alt=\"stars\" data-canonical-src=\"https://img.shields.io/github/stars/madneal/gshark?color=f2f08d&amp;logo=Undertale&amp;logoColor=eb4630\" style=\"max-width: 100%;\"></a></td>\n</tr>\n<tr>\n<td align=\"right\"><strong>Forks</strong></td>\n<td align=\"left\"><a href=\"https://github.com/opsre/awesome-ops\"><img src=\"https://camo.githubusercontent.com/e6199f0dcdf36d5c30f1440181dc48871a7825b21bd2fea68d4985e120440752/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f666f726b732f6d61646e65616c2f67736861726b3f636f6c6f723d626138366562266c6f676f3d48616e647368616b65266c6f676f436f6c6f723d656136616136\" alt=\"forks\" data-canonical-src=\"https://img.shields.io/github/forks/madneal/gshark?color=ba86eb&amp;logo=Handshake&amp;logoColor=ea6aa6\" style=\"max-width: 100%;\"></a></td>\n</tr>\n<tr>\n<td align=\"right\"><strong>License</strong></td>\n<td align=\"left\"><a href=\"https://github.com/opsre/awesome-ops\"><img src=\"https://camo.githubusercontent.com/fc87a09155070025ff8e34a0c9c53ef7e5f8ad1cde24aae1c2f0cec2b359f9ab/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f6d61646e65616c2f67736861726b3f6c6f676f3d64617461253341696d616765253246706e672533426261736536342532436956424f5277304b47676f414141414e53556845556741414144414141414177434159414141425841766d48414141414358424957584d41414173544141414c457745416d70775941414144336b6c45515652346e4f335953557a5555426748384a726f57567255474a66456d3773584e63534446784d544c327069347348456778654e526f77586770455742445552522532424e414e4f4b4f4b36366f6f4b4a4742586545475263574163455646475152484677516d483525324630774861655748493944554455354c356b6e6568644f62377a66652532423139636e434a47495243516945596c514237594a4979474c38616f73756c565a36695246516a69474b6b7564576735614c6c704f70704e586e665071773555304459524a6d56786a4367464633424c755a476d416f5655694b4541726d583744375553677351706f72674761336748664b34483663754262435644334771683141352532424c6745253242467749656e514d306a6f446f66714c6f48564e7742796d384370546e416d327a51713073676478624964515a556c416b7150415a3664676a303541446f59526f6f66792532466f5869726f376b3551586a4c6f70677a4b69514e6c4c4461716f4967754577426a7a7150355066446a45394479495879493633464d547751464d43567271774e61763451666f52673538514625324266724d485172454b3844546f434d714e4179574e4866786d54526f4c4f726d5352566747744466714345715a4f4851727a6f34706243557341333431365169364551394b476a6345465267484f724f4b6e5536574162396247455459656b4b7843766a546167394534706a653534446b3551503862624d4859762532464333756541654a6b50304f4778422532424a70426e4172595238455951516e6f4e31414e4661426e5050356c385372736559514c303641646b30464a5938484f5761424d6c6541486a683068506f73497a6c6f3876304125324633345a694f6548726130714b52504d5653493774762532423932747725324676687855654252713456454c674d376642714b354770526d6f514c584e7075625475367a6f4e52706754386e5051627138347764253246494375767978694b4871694e41664933774d367549684271476b4c696977414f734b44714f68743749747239567938536a52424557667941627225324668523142667056514664484a42253246423268683778376a36517077435665655951326b72554235436c636a3641326d3067576a25324244306d4c34397a573563517943484c4e37726a6c6d6d6174457958582532464372547a412532466f51785a6b576c39474a5443566f25324279546a3837253242346769504b6376307149486f344156344430565a727251493334706e70524d36357875652532467a417265453425324654253246536f676c664542794d7369517441546c4c3352414a355948725378365a44665337307337754d486842705225324659423573305057366f455270316236253246667252684b3353444c35546965364f515548516c5133735644752532427a50636b397657453973747225324236496a533967486d5750616861444a25324277434b364e494242587348423948796b587378774470686c436d416476706c6162554a4e6e5a504239342532464e7436784f6538587a4562503257684d335741673147756236744825324233513150673337365239713475716c6e6f36676448476a444f5139306562303141484d3672596975554a314f713472344656756a35765239427a4d3957674e764f7977446869495951467667626366774166774d764863615067425041253246447948476a50624e394138616d6562636477416444354e6633373574787165774e5552656f797677424958594c645170576c6877465771745061435044334173467541535636717171496c62304a766b564331464c39576b4c55556c55574b337a585a4c46432532423125324642726f46746f364f7358497545594a5034447a7a5732594656316f4a614141414141456c46546b5375516d4343\" alt=\"license\" data-canonical-src=\"https://img.shields.io/github/license/madneal/gshark?logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAD3klEQVR4nO3YSUzUUBgH8JroWVrUGJfEm7sXNcSDFxMTL2pi4sHEgxeNRowXgpEWBDURR%2BNANOKOK66ooKJGBXeEGRcWAcEVFGQRHFwQmH5%2F0wHaeWHI9DUDU5L5knehdOb7zfe%2B19cnCJGIRCQiEYlQB7YJIyGL8aosulVZ6iRFQjiGKkudWg5aLlpOppNXnfPqw5U0DYRJmVxjCgFF3BLuZGmAoVUiKEArmX7D7USgsQporgGa3gHfK4H6cuBbCVD3Gqh1A5%2BLgE%2BFwIenQM0joDofqLoHVNwBym8CpTnAm2zQq0sgdxbIdQZUlAkqPAZ6dgj05ADoYRoofy%2FoXiro7k5QXjLopgzKiQNlLDaqoIguEwBjzqP5PfDjE9DyIXyI63FMTwQFMCVrqwNav4QfoRg58QF%2BfrMHQrEK8DToCMqNAyWNHfxmTRoLOrmSRVgGtDfqCEqZOHQrzo4pbCUsA3416Qi6EQ9KGjcEFRgHOrOKnU6WAb9bGETYekKxCvjTag9E4pje54Dk5QP8bbMHYv%2FC3ueAeJkP0OGxB%2BJpBnArYR8EYQQnoN1ANFaBnPP5l8SrseYQL06Adk0FJY8HOWaBMleAHjh0hPosIzlo8v0A%2F34ZiOeHra0qKRPMVSI7tv%2B92tw%2FvhxUeBRq4VELgM7fBqK5GpRmoQLXNpubTu6zoNRpgT8nPQbq84wd%2FICuvyxiKHqiNAfI3wM6uIhBqGkLiiwAOsKDqOht7Itr9Vy8SjRBEWfyAbr%2FhR1BfpVQFdHJB%2FB2hh7x7j6QpwCVeeYQ2krUB5Clcj6A2m0gWj%2BD0mL49zW5cQyCHLN7rjlmmatEyXX%2FCrTzA%2FoQxZkWl9GJTCVo%2ByTj87%2B4giPKcv0qIHo4AV4D0VZrrQI34pnpRM65xue%2FzAreE4%2FT%2FSoglfEByMsiQtATlL3RAJ5YHrSx6ZDfS70s7uMHhBpR%2FYB5s0PW6oERp1b6%2FfrRhK3SDL5Tie6OQUHQlQ3sVDu%2BzPck9vWE9str%2B6IjS9gHmWPahaDJ%2BwCK6NIBBXsHB9HykXsxwDphlCmAdvplabUJNnZPB94%2FNt6xOe8XzEbP2WhM3WAg1Gub6tH%2B3Q1Pg376R9q4uqlno6gdHGjDOQ90eb01AHM6rYiuUJ1Oq4r4FVuj5vR9BzM9WgNvOywDhiIYQFvgbcfwAfwMvHcaPgBPA%2FDyHGjPbN9A8amebcdwAdD5Nf375txqewNUReoyvwBIXYLdQpWlhwFWqtPaCPD3AsFuASV6qqqIlb0JvkVC1FL9WkLUUlUWK3zXZLFC%2B1%2FBroFto6OsXIuEYJP4DzzW2YFV1oJaAAAAAElFTkSuQmCC\" style=\"max-width: 100%;\"></a></td>\n</tr>\n<tr>\n<td align=\"right\"><strong>UpdatedAt</strong></td>\n<td align=\"left\"><a href=\"https://github.com/opsre/awesome-ops\"><img src=\"https://camo.githubusercontent.com/938d8f379c514f4a9abd7c82c770a350a273a3943af52a0efc92ffd56d033504/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6173742d636f6d6d69742f6d61646e65616c2f67736861726b3f646973706c61795f74696d657374616d703d636f6d6d6974746572266c6f676f3d64617461253341696d616765253246706e672533426261736536342532436956424f5277304b47676f414141414e5355684555674141414234414141416543415941414141374d4b3669414141414358424957584d41414173544141414c457745416d7077594141414648556c45515652346e4c5658375539615678776d3236646c582532466468627825324232253246516e626b7655627264554151674a4a496655444e574454546d4f76314651554661504a346b7573725630314a7431734e70637453327533626f745a746d786439744a5346536f714b71494635625944464c436f76436c656673747a4a387758524c445a4c7a6e6b634f343535376e3364332532466e655a3472454f515a74315771462532423858467234253242664f4c4565326a6f59307a776638546f795a50766a45676b4c592532426b306d6d72584f36644b696e787a476b30666a5430782532425279723055716e6359637a4d317263347451253242497270324c4758646f344e4334567657715453373277716c632532427231334f527269364b6458646e624f484c6c776c7a4a70524b6e3657342532424b36706f4f434e6e494166486a253246253242776168495a4234764b6e715a6630714a704e49716c2532467638545530634e6c3572627963337730516e54703379324c54614a374d314e617844723266526e315370504736476961323174664533345463614f617931694d55564f5146624659714957536f31573854694156616e43306576584f4542375770313448466232327a453566714c4f433545524c515769644e614e49347545636339693768634a6c644868324e57725135674464624f6c7061756d49754c62326174415144506e7a3062384e6257636d785656524a33486d7870536377777a4f4a6d4b44524765384c6c435a444c4739673754496e5631516c376462586256316533675430574b697243466f6d6b5079767758466c5a474a4f6a563625324253743634757564445a4f55354555636f782532464d455144567674364d62634e3237593341797a687633737061557242365a3971724a534f3139657a6a387032704c426b4a792532426343484a7857493567573574636652527a31645531394766476b6f7539505a4f34736d52396a4746777065783444793362766e6d4b79706f74625531335669646a71595a68726a343972764d457425324625324659714c7a396430304e6a57253246637a67796f394f35317a7336614e6c6f354644747530445a675146686c47584a30644241446f4e6864367576703657686f617967374e394c564748386d443462253246486e667455516f4e4734764c51306769784d716c5725324234714f6a744e48446733723166365969525347785279375576714c62395534716b716e78504f4e7661356c447048723125324279794b524e4b57425a793565644d554842326d3572792532422532424551772532427a6766347a6f39253246306f634e3357527a4c4277344a2532424a7950574372716d4967475974554f735744346f785a46516f50556a4770564871493425324661666b51504336665a5165654d31253242764c7549516e6a754257514444437363726d485039656f4e5041744271664f6e5875614b25324268364a45624772732532427076764d6d78654962683836336162565065597953456f39464a48704e4d464a59253242503563575a6b6667374f3174537759436553514c54593345385130392532464256504a556c78516a7368543142736343593032723955445542667643484236367063665041336c794165336e6772332532463437584467614a7a736c7937787741364e5a746c555550437541487161536a5549502532427375653842525741432532464e6651374a5a505a35397330476a3756747049537a34685125324243706658474d4b685a63764c70554b7866574d386f68766637702532464f446a4842666356463849736b383267314648796b63564645253242555a414158343761452532464d6c34504f3530506e75683025324678346e6d637957507364774468427836436d6b4c562532466746446a594b784f4a4f4674623077517949684c39527943774b33414f664947703159464542686e4d4a634c525745624b644b516f55366e63545a6b494544696341792532463831645675454d3552775066657934784f7830496b25324649324e6e466b692532425761664f6f464959466367595a43797864376543556a626334416d46363566742532466b4d686b336f25324235686337734d4a79716a4a45477659466151464972375930775077384246415925324236253242766d6b3377367a7a5275444d6d5a5652736668385274413075455453443775434254364459514e36697665553066706b594c6a453671725672744f78654e4b553954484c5a4a396b4255324a427342685635416976422532466f4b61514e4b675043427744596149665a4334616454684f71463457454e56694c4a77566f586f62664c424b56773637414f6154734c6336355461564b32317651344c613939654b6359673576627873624f627a5451394e37554b4467554f3177446a6944494942736868357a746733396e514d4c535a4248344f7a424f55444551586d323036643366634c67737762585141345068634b336e6873775531427a3877765130395248472532466f597933656a6677424e6d746f59714c4130586741414141424a52553545726b4a676767253344253344266c6162656c3d557064617465644174\" alt=\"last-commit\" data-canonical-src=\"https://img.shields.io/github/last-commit/madneal/gshark?display_timestamp=committer&amp;logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFHUlEQVR4nLVX7U9aVxwm26dlX%2Fdhbx%2B2%2FQnbkvUbrdUAQgJJIfUDNWDTTmOv1FQUFaPJ4kusrV01Jt1sNpctS2u3botZtmxd9tJSFSoqKqIF5bYDFLCovClefstzJ8wXRLDZLznkcO4557n3d3%2FneZ4rEOQZt1WqF%2B8XFr4%2BfOLEe2joY0zwf8ToyZPvjEgkLY%2Bk0mmrXO6dKinxzGk0fjT0x%2BRyr0UqncYczM1rc4tQ%2BIrp2LGXdo4NC4VvWqTS72wqlc%2Br13ORri6KdXdnbOHLlwlzJpRKn6W4%2BK6poOCNnIAfHj%2F%2BwahIZB4vKnqZf0qJpNIql%2Fv8TU0cNl5rbyc3w0QnTp3y2LTaJ7M1NaxDr2fRn1SpPG6Gia21tfE34TcaOay1iMUVOQFbFYqIWSo1W8TiAVanC0evXOEB7Wp14HFb22zE5fqLOC5ERLQWidNaNI4uEcc9i7hcJldHh2NWrQ5gDdbOlpaumIuLb2atAQDPnz0b8NbWcmxVVRJ3HmxpScwwzOJmKDRGe8LlCZDLG9g7TInV1Ql7dbXbV1e3gT0WKirCFomkPyvwXFlZGJOjV6%2BSt64uudDZOU5EUcox%2FMEQDVvt6MbcN27Y3Ayzhv3spaUrB6Z9qrJSO19ezj8p2pLBkJy%2BcCHJxWI5gW5tcfRRz1dU19GfGkou9PZO4smR9jGFwpex4Dy3bvnmKypotbU13VidjqYZhrj49rvMEt%2F%2FYqLz9d00NjW%2Fczgyo9O51zs6aNlo5FDtu0DZgQFhlGXJ0dBADoNhd6uvp6Whoayg7N9LVGH8mD4b%2FHnftUQoNG4vLQ0gixMqlW%2B4qOjtNHDg3r1f6YiRSGxRy7UvqLb9U4qkqnxPONva5lDpHr1%2ByyKRNKWBZy5edMUHB2m5ry%2B%2BEQw%2Bzgf4zo9%2F0ocN3WRzLBw4J%2BJyPWCrqmIgGYtUOsWD4oxZFQoPUjGpVHqI4%2FafkQPC6fZQeeM1%2BvLuIQnjuBWQDDCscrmHP9eoNPAtBqfOnXuaK%2Bh6JEbGrs%2BpvvMmxeIbh863abVPeYySEo9FJHpNMFJY%2BP5cWZkfg7O1tSwYCeSQLTY3E8Q09%2FBVPJUlxQjshT1BscCY02r9UDUBfvCHB66pcfPA3lyAe3ngr3%2F47XDgaJzsly7xwA6NZtlUUPCuAHqaSjUIP%2Bsue8BRWAC%2FNfQ7JZPZ59s0Gj7VtpISz4hQ%2BCpfXGMKhZcvLpUKxfWM8ohvf7p%2FODjHBfcVF8Isk82g1FHykcVFE%2BUZAAX47aE%2FMl4PO50Pnuh0%2Fx4nmcyWPsdwDhBx6CmkLV%2FgFDjYKxOJOFtb0wQyIhL9RyCwK3AOfIGp1YFEBhnMJcLRWEbKdKQoU6ncTZkIEDicAy%2F81dVuEM5RwPfey4xOx0Ik%2FI2NnFki%2BWafOoFIYFcgYZCyxd7eCUjbc4AmF65ft%2FkMhk3o%2B5hc7sMJyqjJEGvYFaQFIr7Y0wPw8BFAY%2B6%2Bvmk3w6zzRuDMmZVRsfh8RtA0uETSD7uCBT6DYQN6iveU0fpkYLjE6qrVrtOxeNKU9THLZJ9kBU2JBsBhV5AivB%2FoKaQNKgPCBwDYaIfZC4adThOqF4WENViLJwVoXobfLBKVw67AOaTsLc65TaVK21vQ4La99eKcYg5vbxsbObzTQ9N7UKDgUO1wDjiDIIBshh5ztg39nQMLSZBH4OzBOUDEQXm206d3fcLgswbXQA4PhcK3nhswU1Bz8wvQ09RHG%2FoYy3ejfwBNmtoYqLA0XgAAAABJRU5ErkJggg%3D%3D&amp;label=UpdatedAt\" style=\"max-width: 100%;\"></a></td>\n</tr>\n<tr>\n<td align=\"right\"><strong>CreatedAt</strong></td>\n<td align=\"left\"><a href=\"https://github.com/opsre/awesome-ops\"><img src=\"https://camo.githubusercontent.com/15d14693017cda16002c8314cf0a7158c94ac8b5ac612904094638451dedba60/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f637265617465642d61742f6d61646e65616c2f67736861726b3f6c6f676f3d64617461253341696d616765253246706e672533426261736536342532436956424f5277304b47676f414141414e5355684555674141414234414141416543415941414141374d4b3669414141414358424957584d41414173544141414c457745416d7077594141414648556c45515652346e4c5658375539615678776d3236646c582532466468627825324232253246516e626b7655627264554151674a4a496655444e574454546d4f76314651554661504a346b7573725630314a7431734e70637453327533626f745a746d786439744a5346536f714b71494635625944464c436f76436c656673747a4a387758524c445a4c7a6e6b634f343535376e3364332532466e655a3472454f515a74315771462532423858467234253242664f4c4565326a6f59307a776638546f795a50766a45676b4c592532426b306d6d72584f36644b696e787a476b30666a5430782532425279723055716e6359637a4d317263347451253242497270324c4758646f344e4334567657715453373277716c632532427231334f527269364b6458646e624f484c6c776c7a4a70524b6e3657342532424b36706f4f434e6e494166486a253246253242776168495a4234764b6e715a6630714a704e49716c2532467638545530634e6c3572627963337730516e54703379324c54614a374d314e617844723266526e315370504736476961323174664533345463614f617931694d55564f5146624659714957536f31573854694156616e43306576584f4542375770313448466232327a453566714c4f433545524c515769644e614e49347545636339693768634a6c644868324e57725135674464624f6c7061756d49754c62326174415144506e7a3062384e6257636d785656524a33486d7870536377777a4f4a6d4b44524765384c6c435a444c4739673754496e5631516c376462586256316533675430574b697243466f6d6b5079767758466c5a474a4f6a563625324253743634757564445a4f55354555636f782532464d455144567674364d62634e3237593341797a687633737061557242365a3971724a534f3139657a6a387032704c426b4a792532426343484a7857493567573574636652527a31645531394766476b6f7539505a4f34736d52396a4746777065783444793362766e6d4b79706f74625531335669646a71595a68726a343972764d457425324625324659714c7a396430304e6a57253246637a67796f394f35317a7336614e6c6f354644747530445a675146686c47584a30644241446f4e6864367576703657686f617967374e394c564748386d443462253246486e667455516f4e4734764c51306769784d716c5725324234714f6a744e48446733723166365969525347785279375576714c62395534716b716e78504f4e7661356c447048723125324279794b524e4b57425a793565644d554842326d3572792532422532424551772532427a6766347a6f39253246306f634e3357527a4c4277344a2532424a7950574372716d4967475974554f735744346f785a46516f50556a4770564871493425324661666b51504336665a5165654d31253242764c7549516e6a754257514444437363726d485039656f4e5041744271664f6e5875614b25324268364a45624772732532427076764d6d78654962683836336162565065597953456f39464a48704e4d464a59253242503563575a6b6667374f3174537759436553514c54593345385130392532464256504a556c78516a7368543142736343593032723955445542667643484236367063665041336c794165336e6772332532463437584467614a7a736c7937787741364e5a746c555550437541487161536a5549502532427375653842525741432532464e6651374a5a505a35397330476a3756747049537a34685125324243706658474d4b685a63764c70554b7866574d386f68766637702532464f446a4842666356463849736b383267314648796b63564645253242555a414158343761452532464d6c34504f3530506e75683025324678346e6d637957507364774468427836436d6b4c562532466746446a594b784f4a4f4674623077517949684c39527943774b33414f664947703159464542686e4d4a634c525745624b644b516f55366e63545a6b494544696341792532463831645675454d3552775066657934784f7830496b25324649324e6e466b692532425761664f6f464959466367595a43797864376543556a626334416d46363566742532466b4d686b336f25324235686337734d4a79716a4a45477659466151464972375930775077384246415925324236253242766d6b3377367a7a5275444d6d5a5652736668385274413075455453443775434254364459514e36697665553066706b594c6a453671725672744f78654e4b553954484c5a4a396b4255324a427342685635416976422532466f4b61514e4b675043427744596149665a4334616454684f71463457454e56694c4a77566f586f62664c424b56773637414f6154734c6336355461564b32317651344c613939654b6359673576627873624f627a5451394e37554b4467554f3177446a6944494942736868357a746733396e514d4c535a4248344f7a424f55444551586d323036643366634c67737762585141345068634b336e6873775531427a3877765130395248472532466f597933656a6677424e6d746f59714c4130586741414141424a52553545726b4a676767253344253344266c6162656c3d437265617465644174\" alt=\"create-at\" data-canonical-src=\"https://img.shields.io/github/created-at/madneal/gshark?logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFHUlEQVR4nLVX7U9aVxwm26dlX%2Fdhbx%2B2%2FQnbkvUbrdUAQgJJIfUDNWDTTmOv1FQUFaPJ4kusrV01Jt1sNpctS2u3botZtmxd9tJSFSoqKqIF5bYDFLCovClefstzJ8wXRLDZLznkcO4557n3d3%2FneZ4rEOQZt1WqF%2B8XFr4%2BfOLEe2joY0zwf8ToyZPvjEgkLY%2Bk0mmrXO6dKinxzGk0fjT0x%2BRyr0UqncYczM1rc4tQ%2BIrp2LGXdo4NC4VvWqTS72wqlc%2Br13ORri6KdXdnbOHLlwlzJpRKn6W4%2BK6poOCNnIAfHj%2F%2BwahIZB4vKnqZf0qJpNIql%2Fv8TU0cNl5rbyc3w0QnTp3y2LTaJ7M1NaxDr2fRn1SpPG6Gia21tfE34TcaOay1iMUVOQFbFYqIWSo1W8TiAVanC0evXOEB7Wp14HFb22zE5fqLOC5ERLQWidNaNI4uEcc9i7hcJldHh2NWrQ5gDdbOlpaumIuLb2atAQDPnz0b8NbWcmxVVRJ3HmxpScwwzOJmKDRGe8LlCZDLG9g7TInV1Ql7dbXbV1e3gT0WKirCFomkPyvwXFlZGJOjV6%2BSt64uudDZOU5EUcox%2FMEQDVvt6MbcN27Y3Ayzhv3spaUrB6Z9qrJSO19ezj8p2pLBkJy%2BcCHJxWI5gW5tcfRRz1dU19GfGkou9PZO4smR9jGFwpex4Dy3bvnmKypotbU13VidjqYZhrj49rvMEt%2F%2FYqLz9d00NjW%2Fczgyo9O51zs6aNlo5FDtu0DZgQFhlGXJ0dBADoNhd6uvp6Whoayg7N9LVGH8mD4b%2FHnftUQoNG4vLQ0gixMqlW%2B4qOjtNHDg3r1f6YiRSGxRy7UvqLb9U4qkqnxPONva5lDpHr1%2ByyKRNKWBZy5edMUHB2m5ry%2B%2BEQw%2Bzgf4zo9%2F0ocN3WRzLBw4J%2BJyPWCrqmIgGYtUOsWD4oxZFQoPUjGpVHqI4%2FafkQPC6fZQeeM1%2BvLuIQnjuBWQDDCscrmHP9eoNPAtBqfOnXuaK%2Bh6JEbGrs%2BpvvMmxeIbh863abVPeYySEo9FJHpNMFJY%2BP5cWZkfg7O1tSwYCeSQLTY3E8Q09%2FBVPJUlxQjshT1BscCY02r9UDUBfvCHB66pcfPA3lyAe3ngr3%2F47XDgaJzsly7xwA6NZtlUUPCuAHqaSjUIP%2Bsue8BRWAC%2FNfQ7JZPZ59s0Gj7VtpISz4hQ%2BCpfXGMKhZcvLpUKxfWM8ohvf7p%2FODjHBfcVF8Isk82g1FHykcVFE%2BUZAAX47aE%2FMl4PO50Pnuh0%2Fx4nmcyWPsdwDhBx6CmkLV%2FgFDjYKxOJOFtb0wQyIhL9RyCwK3AOfIGp1YFEBhnMJcLRWEbKdKQoU6ncTZkIEDicAy%2F81dVuEM5RwPfey4xOx0Ik%2FI2NnFki%2BWafOoFIYFcgYZCyxd7eCUjbc4AmF65ft%2FkMhk3o%2B5hc7sMJyqjJEGvYFaQFIr7Y0wPw8BFAY%2B6%2Bvmk3w6zzRuDMmZVRsfh8RtA0uETSD7uCBT6DYQN6iveU0fpkYLjE6qrVrtOxeNKU9THLZJ9kBU2JBsBhV5AivB%2FoKaQNKgPCBwDYaIfZC4adThOqF4WENViLJwVoXobfLBKVw67AOaTsLc65TaVK21vQ4La99eKcYg5vbxsbObzTQ9N7UKDgUO1wDjiDIIBshh5ztg39nQMLSZBH4OzBOUDEQXm206d3fcLgswbXQA4PhcK3nhswU1Bz8wvQ09RHG%2FoYy3ejfwBNmtoYqLA0XgAAAABJRU5ErkJggg%3D%3D&amp;label=CreatedAt\" style=\"max-width: 100%;\"></a></td>\n</tr>\n</tbody>\n</table></markdown-accessiblity-table>\n<a href=\"https://github.com/opsre/awesome-ops\">\n</a><p dir=\"auto\"><a href=\"https://github.com/opsre/awesome-ops\"><img src=\"https://camo.githubusercontent.com/b964a36ea4078c39f603d46a29436371c7541a2f26e0228d7b21b9d9805b43d3/68747470733a2f2f736f6369616c6966792e6769742e63692f6f707372652f617765736f6d652d6f70732f696d6167653f6465736372697074696f6e3d3126666f6e743d42697474657226666f726b733d31266973737565733d31266c616e67756167653d31266c6f676f3d6874747073253341253246253246617661746172732e67697468756275736572636f6e74656e742e636f6d25324675253246313838353638303230266e616d653d31266f776e65723d31267061747465726e3d436972637569742b426f6172642670756c6c733d31267374617267617a6572733d31267468656d653d4c69676874\" alt=\"\" data-canonical-src=\"https://socialify.git.ci/opsre/awesome-ops/image?description=1&amp;font=Bitter&amp;forks=1&amp;issues=1&amp;language=1&amp;logo=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F188568020&amp;name=1&amp;owner=1&amp;pattern=Circuit+Board&amp;pulls=1&amp;stargazers=1&amp;theme=Light\" style=\"max-width: 100%;\"></a></p>\n<a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https://camo.githubusercontent.com/a15b413168923d02e21292705ceaf86b92675f98e250c5c896a02ba7504a6eae/68747470733a2f2f63646e2e6a7364656c6976722e6e65742f67682f657279616a662f7475406d61696e2f696d672f696d6167655f32303234303432305f3231343430382e676966\"><img src=\"https://camo.githubusercontent.com/a15b413168923d02e21292705ceaf86b92675f98e250c5c896a02ba7504a6eae/68747470733a2f2f63646e2e6a7364656c6976722e6e65742f67682f657279616a662f7475406d61696e2f696d672f696d6167655f32303234303432305f3231343430382e676966\" width=\"100%\" height=\"3\" data-animated-image=\"\" data-canonical-src=\"https://cdn.jsdelivr.net/gh/eryajf/tu@main/img/image_20240420_214408.gif\" style=\"max-width: 100%; height: auto; max-height: 3px;\"></a>\n</div>\n<p align=\"center\" dir=\"auto\">\n   <a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https://camo.githubusercontent.com/b41e36c3cc52e067ea7cb56b29cebf344731484df1413c22680f43bbd3086f47/68747470733a2f2f73312e617831782e636f6d2f323031382f31302f31372f6964685a766a2e706e67\"><img alt=\"GShark logo\" src=\"https://camo.githubusercontent.com/b41e36c3cc52e067ea7cb56b29cebf344731484df1413c22680f43bbd3086f47/68747470733a2f2f73312e617831782e636f6d2f323031382f31302f31372f6964685a766a2e706e67\" data-canonical-src=\"https://s1.ax1x.com/2018/10/17/idhZvj.png\" style=\"max-width: 100%;\"></a>\n   </p><h3 align=\"center\" dir=\"auto\">GShark</h3>\n   <p align=\"center\" dir=\"auto\">Scan for sensitive information easily and effectively.</p>\n<p dir=\"auto\"></p>\n<h1 dir=\"auto\">GShark <a href=\"https://goreportcard.com/report/github.com/madneal/gshark\" rel=\"nofollow\"><img src=\"https://camo.githubusercontent.com/8852098887aee9bb53e9fd54dc9eec32b2a9edebf4c3f4237d2cccd5e7f218fa/68747470733a2f2f676f7265706f7274636172642e636f6d2f62616467652f6769746875622e636f6d2f6d61646e65616c2f67736861726b\" alt=\"Go Report Card\" data-canonical-src=\"https://goreportcard.com/badge/github.com/madneal/gshark\" style=\"max-width: 100%;\"></a>  <a href=\"https://github.com/madneal/gshark/actions/workflows/release.yml\"><img src=\"https://github.com/madneal/gshark/actions/workflows/release.yml/badge.svg\" alt=\"Release\" style=\"max-width: 100%;\"></a></h1>\n<p dir=\"auto\">The project is based on Go and Vue to build a management system for sensitive information detection. For the full introduction, please refer to <a href=\"https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzI3MjA3MTY3Mw==&amp;action=getalbum&amp;album_id=2376148333116850178#wechat_redirect\" rel=\"nofollow\">articles</a> and <a href=\"https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzI3MjA3MTY3Mw==&amp;action=getalbum&amp;album_id=1834365721464651778#wechat_redirect\" rel=\"nofollow\">videos</a>. For now, all the scans are only targeted to the public environments, not local environments.</p>\n<p dir=\"auto\">For the usage of GShark, please refer to the <a href=\"https://github.com/madneal/gshark/wiki\">wiki</a>.</p>\n<h1 dir=\"auto\">Key Features</h1>\n<ul dir=\"auto\">\n<li>🌐 Multi-Platform Support: GitHub, GitLab, Searchcode, Postman, and more*</li>\n<li>🔍 Flexible Rule Management: Custom scanning rules and filtering with whitelist/blacklist support*</li>\n<li>🔑 Fine-grained Access Control: Configurable menu and API permissions</li>\n<li>🔄 Subdomain Discovery: Integrated gobuster for subdomain enumeration</li>\n<li>🚀 Docker Deployment: Containerized deployment for easy setup</li>\n<li>📊 Visual Management Interface: Intuitive web interface for task and result management</li>\n</ul>\n<h1 dir=\"auto\">Quick start</h1>\n<h2 dir=\"auto\">Docker Deployment</h2>\n<div class=\"snippet-clipboard-content notranslate position-relative overflow-auto\" data-snippet-clipboard-copy-content=\"# Clone the repository\ngit clone https://github.com/madneal/gshark\n\ncd gshark\n\n# Build and start the container\ndocker-compose build &amp;&amp; docker-compose up \"><pre class=\"notranslate\"><code class=\"notranslate\"># Clone the repository\ngit clone https://github.com/madneal/gshark\n\ncd gshark\n\n# Build and start the container\ndocker-compose build &amp;&amp; docker-compose up \n</code></pre></div>\n<div class=\"markdown-alert markdown-alert-important\" dir=\"auto\"><p class=\"markdown-alert-title\" dir=\"auto\"><svg class=\"octicon octicon-report mr-2\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z\"></path></svg>Important</p><p dir=\"auto\">Before the MySQL database initial, the scanner container will exit. Need to restart the scanner after the MySQL database initial.</p>\n</div>\n<h2 dir=\"auto\">Manual Deployment</h2>\n<h3 dir=\"auto\">Requirements</h3>\n<ul dir=\"auto\">\n<li>Nginx</li>\n<li>MySQL(version above <strong>8.0</strong>)</li>\n</ul>\n<p dir=\"auto\">It is recommended to deploy the Front-End project using Nginx. Place the <code class=\"notranslate\">dist</code> folder in <code class=\"notranslate\">/var/www/html</code>, and adjust the <code class=\"notranslate\">nginx.conf</code> file (/etc/nginx/nginx.conf for Linux) to set up reverse proxy for the backend service. For detailed deployment tutorials, you can watch videos on <a href=\"https://www.bilibili.com/video/BV1Py4y1s7ap/\" rel=\"nofollow\">bilibili</a> or <a href=\"https://youtu.be/bFrKm5t4M54\" rel=\"nofollow\">youtube</a>. For deployment on Windows, refer to <a href=\"https://www.bilibili.com/video/BV1CA411L7ux/\" rel=\"nofollow\">this link</a>.</p>\n<h3 dir=\"auto\">Nginx</h3>\n<p dir=\"auto\">Can use <code class=\"notranslate\">nginx -t</code> to locate the <code class=\"notranslate\">nginx.conf</code> file, then modify the <code class=\"notranslate\">nginx.conf</code>:</p>\n<div class=\"snippet-clipboard-content notranslate position-relative overflow-auto\" data-snippet-clipboard-copy-content=\"// config the user accoring to your need\nuser  www www;\nworker_processes  1;\n\nevents {\n    worker_connections  1024;\n}\n\nhttp {\n    include       mime.types;\n    default_type  application/octet-stream;\n    sendfile        on;\n    keepalive_timeout  65;\n    server {\n        listen       8080;\n        server_name  localhost;\n\n        location / {\n            autoindex on;\n            root   html;\n            index  index.html index.htm;\n        }\n        location /api/ {\n            proxy_set_header Host $http_host;\n            proxy_set_header X-Real-IP $remote_addr;\n            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n            proxy_set_header X-Forwarded-Proto $scheme;\n            rewrite ^/api/(.*)$ /$1 break;\n            proxy_pass http://127.0.0.1:8888;\n        }\n        error_page   500 502 503 504  /50x.html;\n        location = /50x.html {\n            root   html;\n        }\n    }\n    include servers/*;\n}\n\"><pre class=\"notranslate\"><code class=\"notranslate\">// config the user accoring to your need\nuser  www www;\nworker_processes  1;\n\nevents {\n    worker_connections  1024;\n}\n\nhttp {\n    include       mime.types;\n    default_type  application/octet-stream;\n    sendfile        on;\n    keepalive_timeout  65;\n    server {\n        listen       8080;\n        server_name  localhost;\n\n        location / {\n            autoindex on;\n            root   html;\n            index  index.html index.htm;\n        }\n        location /api/ {\n            proxy_set_header Host $http_host;\n            proxy_set_header X-Real-IP $remote_addr;\n            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n            proxy_set_header X-Forwarded-Proto $scheme;\n            rewrite ^/api/(.*)$ /$1 break;\n            proxy_pass http://127.0.0.1:8888;\n        }\n        error_page   500 502 503 504  /50x.html;\n        location = /50x.html {\n            root   html;\n        }\n    }\n    include servers/*;\n}\n\n</code></pre></div>\n<p dir=\"auto\">The deployment work is straightforward. Find the corresponding version zip file from <a href=\"https://github.com/madneal/gshark/releases\">releases</a>.</p>\n<p dir=\"auto\">Unzip and copy the files inside <code class=\"notranslate\">dist</code> to <code class=\"notranslate\">/var/www/html</code> folder of Nginx.</p>\n<div class=\"snippet-clipboard-content notranslate position-relative overflow-auto\" data-snippet-clipboard-copy-content=\"unzip gshark*.zip\ncd gshark*\nmv dist/* /var/www/html/\n# for Mac\nmv dist/* /usr/local/www/html/\"><pre class=\"notranslate\"><code class=\"notranslate\">unzip gshark*.zip\ncd gshark*\nmv dist/* /var/www/html/\n# for Mac\nmv dist/* /usr/local/www/html/\n</code></pre></div>\n<p dir=\"auto\">Start the Nginx and the Front-End is deployed successfully.</p>\n<div class=\"markdown-alert markdown-alert-tip\" dir=\"auto\"><p class=\"markdown-alert-title\" dir=\"auto\"><svg class=\"octicon octicon-light-bulb mr-2\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z\"></path></svg>Tip</p><p dir=\"auto\">If you installed Nginx by Homebrew, you need to stop Nginx by:</p>\n<div class=\"highlight highlight-source-shell notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"brew services stop nginx\"><pre class=\"notranslate\">brew services stop nginx</pre></div>\n<p dir=\"auto\">Start Nginx for Ubuntu:</p>\n<div class=\"highlight highlight-source-shell notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"systemctl start nginx\"><pre class=\"notranslate\">systemctl start nginx</pre></div>\n</div>\n<h3 dir=\"auto\">Server service</h3>\n<div class=\"highlight highlight-source-shell notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"./gshark serve\"><pre class=\"notranslate\">./gshark serve</pre></div>\n<p dir=\"auto\">Initially, rename <code class=\"notranslate\">config-temp.yaml</code> to <code class=\"notranslate\">config.yaml</code>. After that, you can run the <code class=\"notranslate\">gshark</code> binary file directly. Then, access <code class=\"notranslate\">localhost:8080</code> for local deployment.</p>\n<p dir=\"auto\">If you haven't initialized the database before, you will be redirected to the database initialization page first.</p>\n<a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://private-user-images.githubusercontent.com/12164075/350673002-dfa7e53e-dc4a-4697-831f-a4f4f3810c3c.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NTMwNjc1OTAsIm5iZiI6MTc1MzA2NzI5MCwicGF0aCI6Ii8xMjE2NDA3NS8zNTA2NzMwMDItZGZhN2U1M2UtZGM0YS00Njk3LTgzMWYtYTRmNGYzODEwYzNjLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA3MjElMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNzIxVDAzMDgxMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTJiODM5NzYyZTM4M2FhN2I4MmY5NWY2MjM2NmFjMDYwNDM0MDM2YmI5MmI3ZTQwYzE5ZGI5MjMwZjMyODEwMDYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.VDHE1C54yYFCbDxZ-MI566aqpwivNRdpDh8X86ZUl4U\"><img width=\"936\" alt=\"image\" src=\"https://private-user-images.githubusercontent.com/12164075/350673002-dfa7e53e-dc4a-4697-831f-a4f4f3810c3c.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NTMwNjc1OTAsIm5iZiI6MTc1MzA2NzI5MCwicGF0aCI6Ii8xMjE2NDA3NS8zNTA2NzMwMDItZGZhN2U1M2UtZGM0YS00Njk3LTgzMWYtYTRmNGYzODEwYzNjLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA3MjElMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNzIxVDAzMDgxMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTJiODM5NzYyZTM4M2FhN2I4MmY5NWY2MjM2NmFjMDYwNDM0MDM2YmI5MmI3ZTQwYzE5ZGI5MjMwZjMyODEwMDYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.VDHE1C54yYFCbDxZ-MI566aqpwivNRdpDh8X86ZUl4U\" style=\"max-width: 100%;\"></a>\n<h3 dir=\"auto\">Scan service</h3>\n<div class=\"highlight highlight-source-shell notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"./gshark scan\"><pre class=\"notranslate\">./gshark scan</pre></div>\n<p dir=\"auto\">For the scan service, it's necessary to config the corresponding rules. For example, GitHub or Gitlab rules.</p>\n<h3 dir=\"auto\">Incremental Deployment</h3>\n<p dir=\"auto\">For the incremental deployment, <a href=\"https://github.com/madneal/gshark/blob/master/sql.md\">sql.md</a> should be executed for the corresponding database operations.</p>\n<h2 dir=\"auto\">Development</h2>\n<h3 dir=\"auto\">Server</h3>\n<div class=\"highlight highlight-source-shell notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"git clone https://github.com/madneal/gshark.git\ncd server\ngo mod tidy\nmv config-temp.yaml config.yaml\ngo build\"><pre class=\"notranslate\">git clone https://github.com/madneal/gshark.git\n<span class=\"pl-c1\">cd</span> server\ngo mod tidy\nmv config-temp.yaml config.yaml\ngo build</pre></div>\n<p dir=\"auto\">Run the web server:</p>\n<div class=\"highlight highlight-source-shell notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"go build\n./gshark serve \"><pre class=\"notranslate\">go build\n./gshark serve </pre></div>\n<p dir=\"auto\">Or</p>\n<div class=\"highlight highlight-source-shell notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"go run main.go serve\"><pre class=\"notranslate\">go run main.go serve</pre></div>\n<p dir=\"auto\">Run the scan task:</p>\n<div class=\"highlight highlight-source-shell notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"go build\n./gshark scan \"><pre class=\"notranslate\">go build\n./gshark scan </pre></div>\n<p dir=\"auto\">Or</p>\n<div class=\"highlight highlight-source-shell notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"go run main.go scan\"><pre class=\"notranslate\">go run main.go scan</pre></div>\n<h3 dir=\"auto\">Web</h3>\n<div class=\"snippet-clipboard-content notranslate position-relative overflow-auto\" data-snippet-clipboard-copy-content=\"cd ../web\n\nnpm install\n\nnpm run serve\"><pre class=\"notranslate\"><code class=\"notranslate\">cd ../web\n\nnpm install\n\nnpm run serve\n</code></pre></div>\n<h2 dir=\"auto\">Usage</h2>\n<h3 dir=\"auto\">Add Token</h3>\n<h4 dir=\"auto\">GitHub</h4>\n<p dir=\"auto\">To execute the scan task for GitHub, you need to add a GitHub token for crawl information in GitHub. You can generate a token in <a href=\"https://github.com/settings/tokens\">tokens</a>. Most access scopes are enough. For the GitLab search, remember to add a token too.</p>\n<p dir=\"auto\"><a href=\"https://imgchr.com/i/iR2TMt\" rel=\"nofollow\"><img src=\"https://camo.githubusercontent.com/3feec612bf1665d6b71942317d3780182b6d310cf7d6abba24463bc9dbb4804a/68747470733a2f2f73312e617831782e636f6d2f323031382f31302f33312f695232544d742e6d642e706e67\" alt=\"iR2TMt.md.png\" data-canonical-src=\"https://s1.ax1x.com/2018/10/31/iR2TMt.md.png\" style=\"max-width: 100%;\"></a></p>\n<h4 dir=\"auto\">Postman</h4>\n<p dir=\"auto\">Obtain the <code class=\"notranslate\">postman.sid</code> cookie:</p>\n<a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://private-user-images.githubusercontent.com/12164075/313442908-7775c8bb-79da-4e2b-b341-3c5b8395a6d0.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NTMwNjc1OTAsIm5iZiI6MTc1MzA2NzI5MCwicGF0aCI6Ii8xMjE2NDA3NS8zMTM0NDI5MDgtNzc3NWM4YmItNzlkYS00ZTJiLWIzNDEtM2M1YjgzOTVhNmQwLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA3MjElMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNzIxVDAzMDgxMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWExYWM0OThkYTFhNzEyNGQxM2FmODQwZjA5OGE3NjdmZmFlMWU4MDFiYjUwNjUwNzgzZTdkNzI3OWYyNzAxNzImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.WoMajvB5cnrxJG77N0Lxv2Gdk_GQYoFOCBKuaAmbxXI\"><img width=\"653\" alt=\"image\" src=\"https://private-user-images.githubusercontent.com/12164075/313442908-7775c8bb-79da-4e2b-b341-3c5b8395a6d0.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NTMwNjc1OTAsIm5iZiI6MTc1MzA2NzI5MCwicGF0aCI6Ii8xMjE2NDA3NS8zMTM0NDI5MDgtNzc3NWM4YmItNzlkYS00ZTJiLWIzNDEtM2M1YjgzOTVhNmQwLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA3MjElMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNzIxVDAzMDgxMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWExYWM0OThkYTFhNzEyNGQxM2FmODQwZjA5OGE3NjdmZmFlMWU4MDFiYjUwNjUwNzgzZTdkNzI3OWYyNzAxNzImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.WoMajvB5cnrxJG77N0Lxv2Gdk_GQYoFOCBKuaAmbxXI\" style=\"max-width: 100%;\"></a>\n<h3 dir=\"auto\">Rule Configuration</h3>\n<p dir=\"auto\">For the Github or Gitlab rule, the rule will be matched by the syntax in the corresponding platforms. Directly, you config what you search at GitHub. You can download the rule import template CSV file, then batch import rules.</p>\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https://user-images.githubusercontent.com/12164075/212504597-3e1ad5bd-bacf-433e-83e8-08de7eee6509.png\"><img width=\"572\" alt=\"image\" src=\"https://user-images.githubusercontent.com/12164075/212504597-3e1ad5bd-bacf-433e-83e8-08de7eee6509.png\" style=\"max-width: 100%;\"></a></p>\n<h3 dir=\"auto\">Filter Configuration</h3>\n<p dir=\"auto\">Filter is only addressed to GitHub search now. There are three classes of filters, including <code class=\"notranslate\">extension</code>, <code class=\"notranslate\">keyword</code>, <code class=\"notranslate\">sec_keyword</code>. For <code class=\"notranslate\">extension</code> and <code class=\"notranslate\">keyword</code>, they can used for blacklist or whitelist.</p>\n<p dir=\"auto\">For more information, you can refer to this <a href=\"https://www.bilibili.com/video/BV1aG4y1c72N/?vd_source=ef4657ebf0549af8755f75118b6e81bb\" rel=\"nofollow\">video</a>.</p>\n<h2 dir=\"auto\">Configuration</h2>\n<p dir=\"auto\">You are supposed to rename <code class=\"notranslate\">config-temp.yaml</code> to <code class=\"notranslate\">config.yaml</code> and config the database information and other information according to your environment.</p>\n<h3 dir=\"auto\">GitLab Base Url</h3>\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https://user-images.githubusercontent.com/12164075/203898719-1ce66395-083d-4226-937f-b6eed859addc.png\"><img width=\"363\" alt=\"image\" src=\"https://user-images.githubusercontent.com/12164075/203898719-1ce66395-083d-4226-937f-b6eed859addc.png\" style=\"max-width: 100%;\"></a></p>\n<h2 dir=\"auto\">FAQ</h2>\n<ol dir=\"auto\">\n<li>Default username and password to login</li>\n</ol>\n<p dir=\"auto\">gshark/gshark</p>\n<ol start=\"2\" dir=\"auto\">\n<li>Database initial failed</li>\n</ol>\n<p dir=\"auto\">make sure the version of MySQL is over 5.6. And remove the database before initialing the second time.</p>\n<ol start=\"3\" dir=\"auto\">\n<li><code class=\"notranslate\">go get ./... connection error</code></li>\n</ol>\n<p dir=\"auto\">It's suggested to enable GOPROXY(refer this <a href=\"https://madneal.com/post/gproxy/\" rel=\"nofollow\">article</a> for golang upgrade):</p>\n<div class=\"snippet-clipboard-content notranslate position-relative overflow-auto\" data-snippet-clipboard-copy-content=\"go env -w GOPROXY=https://goproxy.cn,direct\ngo env -w GO111MODULE=on\"><pre class=\"notranslate\"><code class=\"notranslate\">go env -w GOPROXY=https://goproxy.cn,direct\ngo env -w GO111MODULE=on\n</code></pre></div>\n<ol start=\"4\" dir=\"auto\">\n<li>When deploying the web to <code class=\"notranslate\">nginx</code>, the page was empty</li>\n</ol>\n<p dir=\"auto\">try to clear the LocalStorage</p>\n<h2 dir=\"auto\">Resources</h2>\n<h3 dir=\"auto\">Articles</h3>\n<ul dir=\"auto\">\n<li><a href=\"https://mp.weixin.qq.com/s?__biz=MzI3MjA3MTY3Mw==&amp;mid=2247484283&amp;idx=1&amp;sn=3232df7d321c0f62ce61b7e6368204ad&amp;chksm=eb396deddc4ee4fb0c825a378c085223b87fc45f05648d46e7bdc24a03fb83ad6c7ade414df7#rd\" rel=\"nofollow\">多平台的敏感信息监测工具-GShark</a></li>\n<li><a href=\"https://mp.weixin.qq.com/s?__biz=MzI3MjA3MTY3Mw==&amp;mid=2247483770&amp;idx=1&amp;sn=9f02c2803e1c946e8c23b16ff3eba757&amp;chksm=eb396fecdc4ee6fa2f378e846f354f45acf6e6f540cfd54190e9353df47c7707e3a2aadf714f&amp;token=1578822041&amp;lang=zh_CN#rd\" rel=\"nofollow\">GShark-监测你的 Github 敏感信息泄露</a></li>\n</ul>\n<h3 dir=\"auto\">Videos</h3>\n<ul dir=\"auto\">\n<li><a href=\"https://www.bilibili.com/video/BV1oUe3eBEMz/\" rel=\"nofollow\">GShark v1.5.0 版本及 Docker 使用指南</a></li>\n<li><a href=\"https://www.bilibili.com/video/BV1BH4y1C7Ga/\" rel=\"nofollow\">GShark v1.3.0 版本支持 Docker</a></li>\n<li><a href=\"https://www.bilibili.com/video/BV1uY4y177SX\" rel=\"nofollow\">GShark 支持多种规则类型以及规则配置建议</a></li>\n<li><a href=\"https://mp.weixin.qq.com/s?__biz=MzI3MjA3MTY3Mw==&amp;mid=2247484546&amp;idx=1&amp;sn=818915279c5199457340ade89d6cbd54&amp;chksm=eb396a14dc4ee302039bcb1474380a6049dba84370345b7813049aa8feb49a98f89d47ec5d5b#rd\" rel=\"nofollow\">批量导入规则</a></li>\n<li><a href=\"https://mp.weixin.qq.com/s?__biz=MzI3MjA3MTY3Mw==&amp;mid=2247484487&amp;idx=1&amp;sn=78f942ccf6861f433fc7f4a60564441c&amp;chksm=eb396ad1dc4ee3c7505362da243433e54a2b558c96fbbb50f8b6cea87d1f9bc920b249b72705#rd\" rel=\"nofollow\">GShark部署</a></li>\n<li><a href=\"https://mp.weixin.qq.com/s?__biz=MzI3MjA3MTY3Mw==&amp;mid=2247484289&amp;idx=1&amp;sn=2b0f1c38b88c924ad514fb64b559b784&amp;chksm=eb396d17dc4ee4018573dde6c3bfce83903c86034403539eaf1b87b89c4a4dd44f957a308818#rd\" rel=\"nofollow\">windows 部署</a></li>\n<li><a href=\"https://www.bilibili.com/video/BV1Zx4y1G7FX/\" rel=\"nofollow\">GShark v1.0.2 版本发布</a></li>\n<li><a href=\"https://www.bilibili.com/video/BV1aG4y1c72N/\" rel=\"nofollow\">GShark v1.1.0 更新内容介绍</a></li>\n</ul>\n<h2 dir=\"auto\">License</h2>\n<p dir=\"auto\"><a href=\"https://github.com/madneal/gshark/blob/master/LICENSE\">Apache License 2.0</a></p>\n<h2 dir=\"auto\">404StarLink 2.0 - Galaxy</h2>\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/knownsec/404StarLink-Project/raw/master/logo.png\"><img src=\"https://github.com/knownsec/404StarLink-Project/raw/master/logo.png\" alt=\"\" style=\"max-width: 100%;\"></a></p>\n<p dir=\"auto\">GShark 是 404Team <a href=\"https://github.com/knownsec/404StarLink2.0-Galaxy\">星链计划2.0</a>中的一环，如果对 GShark 有任何疑问又或是想要找小伙伴交流，可以参考星链计划的加群方式。</p>\n<ul dir=\"auto\">\n<li><a href=\"https://github.com/knownsec/404StarLink2.0-Galaxy#community\">https://github.com/knownsec/404StarLink2.0-Galaxy#community</a></li>\n</ul>","updatedAt":"2025-05-21T16:01:00Z","upvoteCount":null,"author":{"login":"eryajf","avatarUrl":"https://avatars.githubusercontent.com/u/33259379?u=e4a4090a38ac2473aaed4ef9945233636776c6c3&v=4","url":"https://github.com/eryajf"},"category":null,"labels":{"edges":[{"node":{"name":"更多","color":"25B472"}},{"node":{"name":"安全扫描","color":"bf5886"}},{"node":{"name":"madneal","color":"c69e2e"}}]},"comments":{"edges":[]}}},"pageContext":{"number":215,"previous":{"title":"snowdreamtech/gserver: 使用 gin 和 golang 构建的简单静态 HTTP 服务器。跨平台，零配置","number":214},"next":{"title":"moovweb/gvm: 一个简单的工具，用于多个 Golang 版本的管理与切换","number":216}}},
    "staticQueryHashes": ["151096407","2861350382"]}