我的网站上周一直遭遇拒绝服务/黑客攻击.攻击是在循环中随机生成的无效API密钥攻击我们的Web API.
我不确定他们是否试图猜测一个密钥(在数学上不可能作为64位密钥)或尝试DOS攻击服务器.攻击是分布式的,所以我不能禁止所有的IP地址,因为它发生在数百个客户端.
我的猜测是它是IP的Android应用程序,所以有人在Android应用程序中有一些恶意软件,并使用所有安装来攻击我的服务器.
服务器是Tomcat/Java,目前Web API只响应400无效密钥,并缓存已经进行了几次无效密钥尝试的IP,但仍需要对每个错误请求进行一些处理.
有什么建议如何阻止攻击?有没有办法识别从HTTP标头发出请求的Android应用程序?
所以我正在尝试为新的Facebook Messenger API设置机器人.
我正在关注快速入门.
我设置webhook好了,在我的webhook中看到它,
我打电话给:
https://graph.facebook.com/v2.6/me/subscribed_apps?access_token=%3Ctoken%3E
Run Code Online (Sandbox Code Playgroud)
它没有抛出任何错误,
但是当我进入我生成访问令牌的页面并发送消息时,它不会调用我的webhook.我检查了httpaccess,它没有调用它.
有没有办法调试这个或任何想法?
此外,我仍然困惑的一件事是如何支持从一个Facebook应用程序管理多个页面?任何人都知道答案,或者您是否需要创建一个新的应用程序并获得每个页面的权限?
我有一个Android应用程序,模仿Tensorflow Android演示模型,用于分类图像,
https://github.com/tensorflow/tensorflow/tree/master/tensorflow/examples/android
原始应用程序使用张量流图(.pb)文件来分类来自Inception v3的一组通用图像(我认为)
然后我按照Tensorflow for Poets博客中的说明,为我自己的图像训练自己的图形,
https://petewarden.com/2016/02/28/tensorflow-for-poets/
在更改设置后,这在Android应用程序中运行得很好,
ClassifierActivity
private static final int INPUT_SIZE = 299;
private static final int IMAGE_MEAN = 128;
private static final float IMAGE_STD = 128.0f;
private static final String INPUT_NAME = "Mul";
private static final String OUTPUT_NAME = "final_result";
private static final String MODEL_FILE = "file:///android_asset/optimized_graph.pb";
private static final String LABEL_FILE = "file:///android_asset/retrained_labels.txt";
Run Code Online (Sandbox Code Playgroud)
为了将应用程序移植到iOS,我使用iOS相机演示, https://github.com/tensorflow/tensorflow/tree/master/tensorflow/examples/ios/camera
并使用相同的图形文件并更改了设置,
CameraExampleViewController.mm
// If you have your own model, modify this to the file name, and make sure …
Run Code Online (Sandbox Code Playgroud) 我遇到了一个Web服务的问题,用户试图通过循环随机ID来猜测应用程序ID.
坏请求来自随机IP,所以我不能只禁止他们的IP(除非我动态地做,但我还没有考虑过).
目前,当我检测到已经进行了10次不良应用ID尝试的客户端时,我将它们放在我的应用中的阻止列表中,并拒绝当天该IP的进一步请求.
我想尽量减少我的服务器需要做的工作量,因为坏客户端将继续发送1000个请求,即使它们被拒绝.我知道有动态防火墙解决方案,但现在想要在我的应用程序中轻松实现.目前我正在睡觉5秒以减少呼叫,但我想要做的只是不向客户端发送响应,因此它必须超时.
任何人都知道如何在JAX-RS中用Java做到这一点?
我的服务就像,
@Path("/api")
public class MyServer {
@GET
@Consumes(MediaType.APPLICATION_XML)
@Produces(MediaType.APPLICATION_XML)
@Path("/my-request")
public String myRequest(String type,
@Context HttpServletRequest requestContext,
@Context HttpServletResponse response) {
...
}
Run Code Online (Sandbox Code Playgroud)
在Java中是否有任何方法可以检测Android设备是否安装了脱机语音识别语言,以及是否提示用户不下载它?
我知道你可以要求发言到文本,更喜欢离线语音到文本,但是你怎么知道设备是否安装了语言?
这个问题不是关于如何使用离线语音,这是有效的.问题是"如何从Java应用程序代码中检测和下载/安装脱机语音语言".即让应用程序检测他们是否安装了脱机德语,如果没有提示用户下载/安装它.
我最近注意到,当我重新启动我的Tomcat Web服务器时,Chrome浏览器无法再存储cookie.即tomcat使用cookie进行http会话,浏览器无法再获取其http会话,我们用于存储登录用户的cookie也失败,用户不会保持登录状态.
这似乎是Chrome的新问题,也许来自最近的更新,我不记得以前见过它了.如果我关闭Chrome浏览器,然后重新打开它,则可以再次使用(直到再次重新启动服务器).
问题不会发生在Firefox上,似乎是Chrome中的一个错误.
有没有人注意到这个问题,或者知道解决方案?
我在context.xml中找到了一些关于Chrome/tomcat cookie问题的帖子以及设置的建议,sessionCookiePathUsesTrailingSlash = false但这不能解决问题.
它似乎可能与支持https和http的网站有关,并且在两者之间切换(尽管它确实发生在不支持https的网站上......)
好的,我现在可以重新创建问题,步骤是.
这只发生在Chrome上,并且仅在Chrome更新后才会在使用http的登录页面上添加"不安全"标记
好的,我把它添加到我的web.xml中
<session-config>
<cookie-config>
<http-only>true</http-only>
<secure>true</secure>
</cookie-config>
</session-config>
Run Code Online (Sandbox Code Playgroud)
这并没有解决问题,但是问题总是通过http发生,即使http不再能够存储JSESSIONID cookie.我试过<secure>false</secure>
但仍然遇到了旧问题.所以,它至少与这个设置有关.有人有主意吗?
Chrome上记录的错误,https: //bugs.chromium.org/p/chromium/issues/detail?id = 698741
我正在尝试了解Google Play应用审核流程.当某个应用被拒绝时,您只会获得一个通用模糊的可能原因列表,您的应用可能会遭到拒绝,但您的应用无需任何特定内容,让您猜测原因并随机更改重新提交.
谁知道这个过程是如何工作的?看起来他们可以拒绝一个应用程序,以获得批准的1000个应用程序的内容?
他们的理由是:"在审核过程中,我们发现您的应用违反了我们的元数据政策" https://play.google.com/about/storelisting-promotional/metadata/
其中列出了几个可能的问题,可能是描述文本,徽标或其中一个屏幕截图的问题.您只能猜测,并尝试重新提交.但他们警告说"反复违规可能会导致此应用或Google Play开发者帐户被暂停".因此,如果您猜错了并重新提交,您的帐户可能会被暂停...
这是一个非常温顺的应用程序,没有疯狂的SEO关键字的东西,或攻击性或成人内容.
很抱歉在这里提出这个问题,有人知道堆栈交换是否有更好的地方提出这样的问题?
在Firefox,Chrome和Safari中,任何带有白色背景的视频(我可以制作)都会变成灰色(IE中为白色).好吧,在我的Windows机器上它是灰色的,在我的Android手机/平板电脑和Mac上是白色的...
我正在使用ffmpeg对视频进行编码.如果我将其编码为webm,则背景为白色.
请参阅:https://jsfiddle.net/Lbg8f6ck/
我找到了修复Chrome的黑客攻击:
<video style="-webkit-filter:brightness(108.5%);"
Run Code Online (Sandbox Code Playgroud)
但它不适用于Firefox或Safari.
Firefox的另一个黑客攻击:
filter:brightness(1.085)
Run Code Online (Sandbox Code Playgroud)
但由于某些原因,通过JavaScript设置它不起作用.
在几个版本之前,Chrome的背景为白色,然后再次变为灰色......
问题是:为什么是白色灰色?
是视频还是Chrome,Firefox,Safari的问题?(他们怎么能不支持白色?)
是否有可能获得白色背景?
任何黑客,解决方法?
我正在使用android.speech.SpeechRecognizer API进行语音处理.
我在Android 4-5中工作得很好,
在Android 6中它现在有一堆错误,比如当麦克风打开时发生的响铃被检测为语音,所以它存在(并且当它重新启动时无限循环,因为检测到语音,我们有一个黑客解决方法,为此在播放铃声之前将音量设置为0 ...)
在Android 6中,演讲也会在5秒后死亡,没有任何错误或任何错误.我们有另一个黑客解决方法,它可以检测到没有活动5秒并重新启动它...
现在在Android 7中,语音识别似乎根本不起作用?我还没有能够调试为什么,但有没有人在Android 7中使用语音API的问题?
此外,如果有人知道为什么Android似乎在每个版本的语音API中添加新的错误而不修复它们,请回复.这是Android应该支持的内容,还是他们希望您使用Google意图?
java android speech-recognition speech-to-text android-7.0-nougat
我希望能够在任何网页内放置一个"立即聊天"按钮,弹出一个聊天窗口.
我可以使用JavaScript添加"立即聊天"按钮,但这会在页面中继承css并使其看起来很糟糕.所以我想将它放在自己的页面中,并使用iframe将其嵌入到任何网页中.
这是我能得到的尽可能接近.它会在页面顶部显示iframe,但不允许点击通过.如何点击"Click Me"按钮?
我看到大多数实时聊天都这样做,所以一定有可能.
<html>
<head></head>
<body>
<div><button>Click Me</button></div>
<iframe allowtransparency="true" frameborder="0" scrolling="no" src="https://www.botlibre.com/script?file&id=15069189" style="height:100%; background: none; border: 0px; bottom: 0px; float: none; left: 0px; margin: 0px; padding: 0px; position: absolute; right: 0px; width: 100%;"></iframe>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
希望有可能不必完全确定iframe的大小,但也许......它不是吗?奇怪的是,iframe可以显示它背后的网页,但不能允许它被点击.
android ×5
java ×3
cookies ×1
css ×1
ddos ×1
facebook ×1
ffmpeg ×1
firefox ×1
google-play ×1
html ×1
html5-video ×1
http ×1
iframe ×1
ios ×1
javascript ×1
jax-rs ×1
objective-c ×1
rest ×1
safari ×1
security ×1
tensorflow ×1
tomcat ×1
web-services ×1
webhooks ×1